js实现鼠标感应向下滑动隐藏菜单的方法


Posted in Javascript onFebruary 20, 2015

本文实例讲述了js实现鼠标感应向下滑动隐藏菜单的方法。分享给大家供大家参考。具体实现方法如下:

<html>

<head>

<title>隐藏在网页左上角感应鼠标向下滑出的隐藏菜单</title>

<style>#D1 {

    BACKGROUND-COLOR: blue; 

    BORDER-BOTTOM: white 2px outset; 

    BORDER-LEFT: white 2px outset; 

    BORDER-RIGHT: white 2px outset; 

    BORDER-TOP: white 2px outset; 

    LEFT: 0px; POSITION: absolute; 

    TOP: 0px; VISIBILITY: hidden; 

    WIDTH: 300px; 

    layer-background-color: lightgreen

}

a{font-size:9pt;color:#000000}

a:link{text-decoration:none}

a:hover{text-decoration:none;color:#FFFFFF}

a:visited{text-decoration:none}

.40pt{font-size:40pt;color:#ub39a1;font-family:文鼎琥珀繁}

</style>

<script language="javascript">

function menuIn() //菜单隐藏

{

        if(n4) {

                clearTimeout(out_ID)

                if( menu.top > menuH*-1+20+10 ) {  

                        menu.top -= 8

                        in_ID = setTimeout("menuIn()", 1)

                }

                else if( menu.top > menuH*-1+20 ) {

                        menu.top--

                        in_ID = setTimeout("menuIn()", 1)

                }

        }

        else { 

                clearTimeout(out_ID)

                if( menu.pixelTop > menuH*-1+20+10 ) {

                        menu.pixelTop -= 8

                        in_ID = setTimeout("menuIn()", 1) 

                }

                else if( menu.pixelTop > menuH*-1+20 ) {

                        menu.pixelTop--

                        in_ID = setTimeout("menuIn()", 1)

                }

        }

}

function menuOut() //菜单显示

{

        if(n4) {

                clearTimeout(in_ID)

                if( menu.top < -10) { 

                        menu.top += 4

                        out_ID = setTimeout("menuOut()", 1)

                }

                else if( menu.top < 0) { 

                        menu.top++

                        out_ID = setTimeout("menuOut()", 1)

                }

                

        }

        else { 

                clearTimeout(in_ID)

                if( menu.pixelTop < -10) {

                        menu.pixelTop += 2

                        out_ID = setTimeout("menuOut()", 1)

                }

                else if( menu.pixelTop < 0 ) {

                        menu.pixelTop++

                        out_ID = setTimeout("menuOut()", 1)

                }

        }

}

function fireOver() { 

        clearTimeout(F_out)           

        F_over = setTimeout("menuOut()", 10) 

}

function fireOut() { 

        clearTimeout(F_over)

         F_out = setTimeout("menuIn()", 10)

}

function init() {

        if(n4) {

                menu = document.D1

                menuH = menu.document.height

                menu.top = menu.document.height*-1+20 

                menu.onmouseover = menuOut

                menu.onmouseout = menuIn

        menu.visibility = "visible"

        }

        else if(e4) {

                menu = D1.style

                menuH = D1.offsetHeight

                D1.style.pixelTop = D1.offsetHeight*-1+20

                D1.onmouseover = fireOver

                D1.onmouseout = fireOut

                D1.style.visibility = "visible"

        }

}

F_over=F_out=in_ID=out_ID=null

n4 = (document.layers)?1:0

e4 = (document.all)?1:0;

</script>

</head>
<body onload="init()">
<div id="D1">
<table border="0" width="100%">

<TBODY>

  <tr>

    <td align="middle" bgColor="ub39a1" rowSpan="2"><b style="COLOR: ub39a1">

    M<br>

    E<br>

    N<br>

    U</b></td>

    <td> <br><br><ul>

      <li><a href="#nogo">

          选     项 1</a> 

      </li>

      <li><a href="li#nogo">

          选     项 2</a> 

      </li>

      <li><a href="#nogo">

          选     项 3</a> 

      </li>

      <li><a href="#nogo">

          选     项 4</a> 

      </li>

      <li><a href="#nogo">

          选     项 5</a> 

      </li>

    </ul>

    </td>

    <td><br><br><ul>

      <li><a href="#nogo">

          选     项 6</a> 

      </li>

      <li><a href="#nogo">

          选     项 7</a> 

      </li>

      <li><a href="#nogo">

          选     项 8</a> 

      </li>

      <li><a href="#nogo">

          选     项 9</a> 

      </li>

      <li><a href="#nogo">

          选     项 10</a>

      </li>

    </ul>

    </td>

  </tr>

  <tr>

    <td align="right" colSpan="2">

     </td>

  </tr>

</TBODY>

</table>

</div>

</body>

</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
jquery中对表单的基本操作代码
Jul 29 Javascript
基于jquery的从一个页面跳转到另一个页面的指定位置的实现代码(带平滑移动的效果)
May 24 Javascript
基于jquery &amp; json的省市区联动代码
Jun 26 Javascript
JS常见问题整理(持续更新)
Aug 06 Javascript
javascript简单判断输入内容是否合法的方法
May 11 Javascript
详解微信开发中snsapi_base和snsapi_userinfo及静默授权的实现
Mar 11 Javascript
vue-cli 自定义指令directive 添加验证滑块示例
Oct 19 Javascript
使用socket.io实现简单聊天室案例
Jan 02 Javascript
JavaScript实现简单的隐藏式侧边栏功能示例
Aug 31 Javascript
详解Vue组件插槽的使用以及调用组件内的方法
Nov 13 Javascript
Vue入门之数量加减运算操作示例
Dec 11 Javascript
js中Array对象的常用遍历方法详解
Jan 17 Javascript
js实现鼠标滚轮控制图片缩放效果的方法
Feb 20 #Javascript
IE及IE6浏览器中判断JS文件加载成功失败的方法
Feb 18 #Javascript
使用JavaScript开发IE浏览器本地插件实例
Feb 18 #Javascript
JQuery实现展开关闭层的方法
Feb 17 #Javascript
jQuery实现鼠标滑过Div层背景变颜色的方法
Feb 17 #Javascript
JS点击链接后慢慢展开隐藏着图片的方法
Feb 17 #Javascript
js实现按钮控制图片360度翻转特效的方法
Feb 17 #Javascript
You might like
一键删除顽固的空文件夹 软件下载
2007/01/26 PHP
php实现将字符串按照指定距离进行分割的方法
2015/03/14 PHP
php 升级到 5.3+ 后出现的一些错误,如 ereg(); ereg_replace(); 函数报错
2015/12/07 PHP
纯JavaScript实现的完美渐变弹出层效果代码
2010/04/02 Javascript
jquery multiSelect 多选下拉框
2010/07/09 Javascript
JQuery扩展插件Validate 1 基本使用方法并打包下载
2011/09/05 Javascript
jquery插件lazyload.js延迟加载图片的使用方法
2014/02/19 Javascript
JQuery实现表格动态增加行并对新行添加事件
2014/07/30 Javascript
分享一个常用的javascript静态类
2014/12/31 Javascript
jQuery实现鼠标经过提示信息的地图热点效果
2015/04/26 Javascript
如何正确理解javascript的模块化
2017/03/02 Javascript
从零开始学习Node.js系列教程四:多页面实现数学运算的client端和server端示例
2017/04/13 Javascript
jQuery Form插件使用详解_动力节点Java学院整理
2017/07/17 jQuery
Vue 多层组件嵌套二种实现方式(测试实例)
2017/09/08 Javascript
详解angular分页插件tm.pagination二次触发问题解决方案
2018/07/20 Javascript
关于AngularJS中ng-repeat不更新视图的解决方法
2018/09/30 Javascript
vue安装和使用scss及sass与scss的区别详解
2018/10/15 Javascript
bootstrap table列和表头对不齐的解决方法
2019/07/19 Javascript
详解Vue 单文件组件的三种写法
2020/02/19 Javascript
[01:19:11]Ti4 循环赛第二日 NaVi.us vs iG
2014/07/11 DOTA
剖析Django中模版标签的解析与参数传递
2015/07/21 Python
python使用正则表达式的search()函数实现指定位置搜索功能
2017/11/10 Python
python中验证码连通域分割的方法详解
2018/06/04 Python
python线程安全及多进程多线程实现方法详解
2019/09/27 Python
Python算法的时间复杂度和空间复杂度(实例解析)
2019/11/19 Python
python 变量初始化空列表的例子
2019/11/28 Python
keras分类模型中的输入数据与标签的维度实例
2020/07/03 Python
CSS3实现网站商品展示效果图
2020/01/18 HTML / CSS
html5通过postMessage进行跨域通信的方法
2017/12/04 HTML / CSS
西班牙自行车和跑步商店:Alltricks
2018/07/07 全球购物
小学生纪念九一八事变演讲稿
2014/09/14 职场文书
写给老师的感谢信
2015/01/20 职场文书
债务追讨律师函
2015/06/24 职场文书
教你修复 Win11应用商店加载空白问题
2021/12/06 数码科技
Vue+TypeScript中处理computed方式
2022/04/02 Vue.js
Win11如何查看显卡型号 Win11查看显卡型号的方法
2022/08/14 数码科技