Bootstrap导航条可点击和鼠标悬停显示下拉菜单的实现代码


Posted in Javascript onJune 23, 2016

使用Bootstrap导航条组件时,如果你的导航条带有下拉菜单,那么这个带下拉菜单的导航在点击时只会浮出下拉菜单,它本身的href属性会失效,也就是失去了超链接功能,这并不是我想要的,我希望导航条的链接可以正常打开它的链接,但又需要下拉菜单功能,开始折腾~

首先解决带下拉菜单的导航条可以点击问题,下拉菜单效果是JS实现的,分析bootstrap.js文件发现,Bootstrap把下拉菜单写成了一个JQuery插件,在dropdown代码段中找到了关键的几句:

// APPLY TO STANDARD DROPDOWN ELEMENTS
// ===================================
$(document)
.on('click.bs.dropdown.data-api', clearMenus)
.on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
.on('click.bs.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
.on('keydown.bs.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)

找到几句关键代码后,想到了解决办法,只要把其中click.bs.dropdown.data-api事件关闭就OK了,代码如下:

$(document).ready(function(){
$(document).off('click.bs.dropdown.data-api');
});

以上代码测试有效,导航条可点击问题解决,下面解决鼠标悬停弹下拉菜单问题,这个相对简单些,用JQuery的鼠标事件就可实现,代码如下:

$(document).ready(function(){
dropdownOpen();//调用
});
/**
* 鼠标划过就展开子菜单,免得需要点击才能展开
*/
function dropdownOpen() {
var $dropdownLi = $('li.dropdown');
$dropdownLi.mouseover(function() {
$(this).addClass('open');
}).mouseout(function() {
$(this).removeClass('open');
});
}

以上所述是小编给大家介绍的Bootstrap导航条可点击和鼠标悬停显示下拉菜单的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JS Jquery 遍历,筛选页面元素 自动完成(实现代码)
Jul 08 Javascript
jQuery 的全选(全非选)即取得被选中的值使用介绍
Nov 12 Javascript
每天一篇javascript学习小结(Boolean对象)
Nov 12 Javascript
JavaScript实现邮箱地址自动匹配功能代码
Nov 28 Javascript
vue2.0父子组件间通信的实现方法
Apr 19 Javascript
node.js + socket.io 实现点对点随机匹配聊天
Jun 30 Javascript
vue-cli整合vuex的时候,修改actions和mutations,实现热部署的方法
Sep 19 Javascript
node实现生成带参数的小程序二维码并保存到本地功能示例
Dec 05 Javascript
微信小程序学习笔记之目录结构、基本配置图文详解
Mar 28 Javascript
Vue安装浏览器开发工具的步骤详解
May 12 Javascript
微信小程序wx.navigateTo中events属性实现页面间通信传值,数据同步
Jul 13 Javascript
vuex vue简单使用知识点总结
Aug 29 Javascript
Bootstrap弹出带合法性检查的登录框实例代码【推荐】
Jun 23 #Javascript
JS留言功能的简单实现案例(推荐)
Jun 23 #Javascript
Bootstrap实现登录校验表单(带验证码)
Jun 23 #Javascript
JavaScript自学笔记(必看篇)
Jun 23 #Javascript
Bootstrap中文本框的宽度变窄并且加入一副验证码图片的实现方法
Jun 23 #Javascript
JS使用JSON作为参数实例分析
Jun 23 #Javascript
浅析Bootstrap表格的使用
Jun 23 #Javascript
You might like
laravel 出现command not found问题的解决方案
2019/10/23 PHP
11款新鲜的jQuery插件[附所有demo下载]
2011/01/24 Javascript
JavaScript中的稀疏数组与密集数组[译]
2012/09/17 Javascript
JS实现可改变列宽的table实例
2013/07/02 Javascript
jQuery删除节点的三个方法即remove()detach()和empty()
2013/12/27 Javascript
jquery实现相册一下滑动两次的方法
2015/02/09 Javascript
JavaScript中数据结构与算法(一):栈
2015/06/19 Javascript
Bootstrap每天必学之下拉菜单
2015/11/25 Javascript
使用Function.apply()的参数数组化来提高 JavaScript程序性能的技巧
2015/12/23 Javascript
javascript获取wx.config内部字段解决微信分享
2016/03/09 Javascript
jQuery学习心得总结(必看篇)
2016/06/10 Javascript
JSON对象 详解及实例代码
2016/10/18 Javascript
微信小程序 教程之条件渲染
2016/10/18 Javascript
Angularjs2不同组件间的通信实例代码
2017/05/06 Javascript
js脚本编写简单刷票投票系统
2017/06/27 Javascript
详解从Vue-router到html5的pushState
2018/07/21 Javascript
JS实现将对象转化为数组的方法分析
2019/01/21 Javascript
js实现验证码功能
2020/07/24 Javascript
PHP读取远程txt文档到数组并实现遍历
2020/08/25 Javascript
python socket 超时设置 errno 10054
2014/07/01 Python
python中的break、continue、exit()、pass全面解析
2017/08/05 Python
tensorflow 使用flags定义命令行参数的方法
2018/04/23 Python
python sys.argv[]用法实例详解
2018/05/25 Python
使用sublime text3搭建Python编辑环境的实现
2021/01/12 Python
CSS3中animation实现流光按钮效果
2020/12/21 HTML / CSS
html5指南-2.如何操作document metadata
2013/01/07 HTML / CSS
巴西最好的男鞋:Rafarillo
2018/05/25 全球购物
Ajxa常见问题都有哪些
2014/03/26 面试题
机电一体化大学生求职信
2013/11/08 职场文书
小学生寒假家长评语
2014/04/16 职场文书
党员目标管理责任书
2014/07/25 职场文书
诚信考试承诺书范文
2015/04/29 职场文书
php随机生成验证码,php随机生成数字,php随机生成数字加字母!
2021/04/01 PHP
Python 数据可视化之Bokeh详解
2021/11/02 Python
python画条形图的具体代码
2022/04/20 Python
nginx七层负载均衡配置详解
2022/07/15 Servers