基于JS代码实现导航条弹出式悬浮菜单


Posted in Javascript onJune 17, 2016

1.概述

采用弹出式悬浮菜单,不但可以使网站的导航内容更加清晰,而且不影响页面的整体效果。运行本实例,如图1所示,当鼠标移动到一级导航菜单的标题上时,将弹出悬浮菜单显示该菜单对应的子菜单,鼠标移出时,将隐藏悬浮菜单。

2.技术要点

本实例主要是在JavaScript中,动态改变<div>标签对象的style属性的display属性值来实现动态显示和隐藏二级导航菜单。其实,每一个一级菜单下的二级菜单内容是已经添加在网页的<div>标签中,只是此时设置了<div>不显示。所以,在JavaScript中,当鼠标经过某个导航的标题时,只需要调用指定的<div>对象,动态修改它的display属性即可,display属性包含两个用于显示和隐藏的属性值,分别为none(隐藏)和block(显示)。

例如:在网页中有一个id为mydiv的<div>标签,并设置了此<div>为隐藏。在JavaScript中,控制此<div>显示的写法如下:

document.getElementById("mydiv").style.display="block";

3.具体实现

(1)编写用于显示和隐藏的JavaScript方法,当鼠标经过一级菜单标题时会显示二级菜单,当鼠标移出时会隐藏二级菜单。关键代码如下:

function change(img,subMenu,path,type){
img.src="images/"+path+".GIF";
if(subMenu!=null){
if(type==0){
subMenu.style.display="none";
}else{
subMenu.style.display="block";
}
}
}

(2)在页面中,预先在<div>标签中为每个一级导航菜单添加二级菜单的内容,并设置二级菜单的<div>标签为隐藏。关键代码如下:

<div id="NUser" style="background-color:#F3FFD5; border:#75A102 1px solid; width:200px; position:absolute; display:none; left:1px; top: 34px;">
<table width="100%" border="0" height="35px" cellspacing="0" cellpadding="0">
<tr>
<td align="center"><a href="#">浏览员工信息</a>  <a href="#">添加新员工</a></td>
</tr>
</table>
</div>
...//此处省略了其他二级菜单的<div>内容

(3)在一级菜单的的表格的<td>中设置onMouseOver和onMouseOut事件,调用步骤(1)中定义的JavaScript的change()方法,动态改变二级菜单<div>的显示和隐藏。关键代码如下:

<td onMouseOver="change(ImgUser,NUser,'NUser_r',1)" onMouseOut="change(ImgUser,NUser,'NUser_b',0)" style="cursor:hand;">
<img id="ImgUser" src="images/NUser_b.GIF" width="106" height="48" border="0">
...//省略了二级菜单的<div>代码
</td>

以上所述是小编给大家介绍的导航条弹出式悬浮菜单,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript数组去掉重复
May 12 Javascript
Window.Open打开窗体和if嵌套代码
Apr 15 Javascript
详解JavaScript中双等号引起的隐性类型转换
May 30 Javascript
JavaScript自定义浏览器滚动条兼容IE、 火狐和chrome
Jan 05 Javascript
EasyUi 打开对话框后控件赋值及赋值后不显示的问题解决办法
Jan 19 Javascript
jQuery插件HighCharts实现的2D面积图效果示例【附demo源码下载】
Mar 15 Javascript
Bootstrap Table从零开始
Jun 30 Javascript
Vue.js用法详解
Nov 13 Javascript
js判断复选框是否选中的方法示例【基于jQuery】
Oct 10 jQuery
jQuery实现消息弹出框效果
Dec 10 jQuery
jQuery 图片查看器插件 Viewer.js用法简单示例
Apr 04 jQuery
vue-cli3访问public文件夹静态资源报错的解决方式
Sep 02 Javascript
Javascript中的数组常用方法解析
Jun 17 #Javascript
iframe中使用jquery进行查找的方法【案例分析】
Jun 17 #Javascript
JS检测页面中哪个HTML标签触发点击事件的方法
Jun 17 #Javascript
jquery.qtip提示信息插件用法简单实例
Jun 17 #Javascript
jQuery实现区域打印功能代码详解
Jun 17 #Javascript
javascript日期比较方法实例分析
Jun 17 #Javascript
JS实现复制内容到剪贴板功能兼容所有浏览器(推荐)
Jun 17 #Javascript
You might like
大师制作的中短波矿石收音机
2020/04/02 无线电
PHP字符串处理的10个简单方法
2010/06/30 PHP
PHP简单数据库操作类实例【支持增删改查及链式操作】
2016/10/10 PHP
PHP编程获取音频文件时长的方法【基于getid3类】
2017/04/20 PHP
PHP如何实现订单的延时处理详解
2017/12/30 PHP
tp5(thinkPHP5框架)时间查询操作实例分析
2019/05/29 PHP
jQuery实现的Div窗口震动效果实例
2015/08/07 Javascript
jQuery超赞的评分插件(8款)
2015/08/20 Javascript
JavaScript html5 canvas画布中删除一个块区域的方法
2016/01/26 Javascript
基于JS实现导航条之调用网页助手小精灵的方法
2016/06/17 Javascript
JS之if语句对接事件动作逻辑(详解)
2017/06/28 Javascript
React进阶学习之组件的解耦之道
2017/08/07 Javascript
JS实现带导航城市列表以及输入搜索功能
2018/01/04 Javascript
webpack 4.0.0-beta.0版本新特性介绍
2018/02/10 Javascript
element ui分页多选,翻页记忆的实例
2019/09/03 Javascript
[01:38]DOTA2 2015国际邀请赛中国区预选赛 Showopen
2015/06/01 DOTA
[42:25]EG vs Spirit Supermajor 败者组 BO3 第二场 6.4
2018/06/05 DOTA
[01:14]TI珍贵瞬间系列(六):冠军
2020/08/30 DOTA
Python探索之URL Dispatcher实例详解
2017/10/28 Python
python 实现GUI(图形用户界面)编程详解
2019/07/17 Python
Python操作excel的方法总结(xlrd、xlwt、openpyxl)
2019/09/02 Python
python 实现批量替换文本中的某部分内容
2019/12/13 Python
python装饰器原理与用法深入详解
2019/12/19 Python
Python 实现简单的客户端认证
2020/07/29 Python
canvas绘制视频封面的方法
2018/02/05 HTML / CSS
新加坡网上美容店:Hermo新加坡
2019/06/19 全球购物
俄罗斯购买剧院和演唱会门票网站:Parter.ru
2019/11/09 全球购物
德国的各种媒体在线商店:Thalia.de(书籍、电子书、玩具等)
2020/10/08 全球购物
介绍一下SOA和SOA的基本特征
2016/02/24 面试题
考试作弊被抓检讨书
2014/01/10 职场文书
安全检查验收制度
2014/01/12 职场文书
主题酒店策划书
2014/01/28 职场文书
文明寝室申报材料
2014/05/12 职场文书
企业员工薪酬方案
2014/06/04 职场文书
《别在吃苦的年纪选择安逸》读后感3篇
2019/11/30 职场文书
Python用tkinter实现自定义记事本的方法详解
2022/03/31 Python