JS组件Bootstrap实现下拉菜单效果代码


Posted in Javascript onApril 26, 2016

Bootstrap 下拉菜单 这一章讲解了下拉菜单,但是没有涉及到交互部分,本章将具体讲解下拉菜单的交互。使用下拉菜单(Dropdown)插件,您可以向任何组件(比如导航栏、标签页、胶囊式导航菜单、按钮等)添加下拉菜单。

如果您想要单独引用该插件的功能,那么您需要引用 dropdown.js。或者,正如 Bootstrap 插件概览 一章中所提到,您可以引用 bootstrap.js 或压缩版的 bootstrap.min.js。

一、用法
您可以切换下拉菜单(Dropdown)插件的隐藏内容:

1、通过 data 属性:向链接或按钮添加 data-toggle="dropdown" 来切换下拉菜单,如下所示:

<div class="dropdown">
 <a data-toggle="dropdown" href="#">下拉菜单(Dropdown)触发器</a>
 <ul class="dropdown-menu" role="menu" aria-labelledby="dLabel">
 ...
 </ul>
</div>

如果您需要保持链接完整(在浏览器不启用 JavaScript 时有用),请使用 data-target 属性代替 href="#":

<div class="dropdown">
 <a id="dLabel" role="button" data-toggle="dropdown" data-target="#" href="/page.html">
 下拉菜单(Dropdown) <span class="caret"></span>
 </a>
 
 
 <ul class="dropdown-menu" role="menu" aria-labelledby="dLabel">
 ...
 </ul>
</div>

2、通过 JavaScript:通过 JavaScript 调用下拉菜单切换,请使用下面的方法:
$('.dropdown-toggle').dropdown()

二、下拉菜单简单实例
常规使用中,和组件方法一样,代码如下:

//声明式用法

<div class="dropdown">
 <button class="btn btn-primary" data-toggle="dropdown">
   下拉菜单
   <span class="caret"></span>
 </button>
 <ul class="dropdown-menu">
   <li><a href="#">首页</a></li>
   <li><a href="#">产品</a></li>
   <li><a href="#">资讯</a></li>
   <li><a href="#">关于</a></li>
 </ul>
</div>

声明式用法的关键核心:
1.外围容器使用 class="dropdown"包裹;
2.内部点击按钮事件绑定 data-toggle="dropdown";
3.菜单元素使用 class="dropdown-menu"。

//如果按钮在容器外部,可以通过 data-target 进行绑定。

<button class="btn btn-primary" id="btn" data-toggle="dropdown"
data-target="#dropdown">
在 JavaScript 调用中,没有属性,方法并不好用,下面介绍四个基本事件。
//下拉菜单方法,但仍然需要 data-*

$('#btn').dropdown();
$('#btn').dropdown('toggle');

下拉菜单支持 4 种事件,分别对应弹出前、弹出后、关闭前和关闭后。

JS组件Bootstrap实现下拉菜单效果代码

//事件,其他雷同

$('#dropdown').on('show.bs.dropdown', function() {
 alert('在调用 show 方法时立即触发!');
});

三、在标签页内的下拉菜单的用法

<!DOCTYPE html>
<html>
<head>
 <title>Bootstrap 实例 - 带有下拉菜单的标签页</title>
 <link href="/bootstrap/css/bootstrap.min.css" rel="stylesheet">
 <script src="/scripts/jquery.min.js"></script>
 <script src="/bootstrap/js/bootstrap.min.js"></script>
</head>
<body>
 
<p>带有下拉菜单的标签页</p>
<ul class="nav nav-tabs">
 <li class="active"><a href="#">Home</a></li>
 <li><a href="#">SVN</a></li>
 <li><a href="#">iOS</a></li>
 <li><a href="#">VB.Net</a></li>
 <li class="dropdown">
  <a class="dropdown-toggle" data-toggle="dropdown" href="#">
   Java <span class="caret"></span>
  </a>
  <ul class="dropdown-menu">
   <li><a href="#">Swing</a></li>
   <li><a href="#">jMeter</a></li>
   <li><a href="#">EJB</a></li>
   <li class="divider"></li>
   <li><a href="#">分离的链接</a></li>
  </ul>
 </li>
 <li><a href="#">PHP</a></li>
</ul>
 
</body>
</html>

效果图:

JS组件Bootstrap实现下拉菜单效果代码

如果大家还想深入学习,可以点击这里进行学习,再为大家附3个精彩的专题:

以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
GWT中复制到剪贴板 js+flash实现复制 兼容性比较好
Mar 07 Javascript
javascript showModalDialog 内跳转页面的问题
Nov 25 Javascript
js 显示base64编码的二进制流网页图片
Apr 04 Javascript
JS实现的表格操作类详解(添加,删除,排序,上移,下移)
Dec 22 Javascript
深入理解JQuery中的事件与动画
May 18 Javascript
深入理解JavaScript单体内置对象
Jun 06 Javascript
js实现文字截断功能
Sep 14 Javascript
Express的HTTP重定向到HTTPS的方法
Jun 06 Javascript
vue安装和使用scss及sass与scss的区别详解
Oct 15 Javascript
JavaScript中将值转换为字符串的五种方法总结
Jun 06 Javascript
vue 中固定导航栏的实例代码
Nov 01 Javascript
js实现双人五子棋小游戏
May 28 Javascript
基于Jquery插件实现跨域异步上传文件功能
Apr 26 #Javascript
Bootstrap每天必学之模态框(Modal)插件
Apr 26 #Javascript
深入理解JS中的substr和substring
Apr 26 #Javascript
js获取页面及个元素高度、宽度的代码
Apr 26 #Javascript
jQuery javascript获得网页的高度与宽度的实现代码
Apr 26 #Javascript
JQuery给select添加/删除节点的实现代码
Apr 26 #Javascript
js计算时间差代码【包括计算,天,时,分,秒】
Apr 26 #Javascript
You might like
PHP XML操作的各种方法解析(比较详细)
2010/06/17 PHP
php实现可用于mysql,mssql,pg数据库操作类
2014/12/13 PHP
php对文件夹进行相关操作(遍历、计算大小)
2015/11/04 PHP
php获取文章内容第一张图片的方法示例
2017/07/03 PHP
ThinkPHP框架实现定时执行任务的两种方法分析
2018/09/04 PHP
laravel实现简单用户权限的示例代码
2019/05/28 PHP
JQuery跨Iframe选择实现代码
2010/08/19 Javascript
ko knockoutjs动态属性绑定技巧应用
2012/11/14 Javascript
jquery插件推荐浏览器嗅探userAgent
2014/11/09 Javascript
asp.net中oracle 存储过程(图文)
2015/08/12 Javascript
jQuery事件用法详解
2016/10/06 Javascript
JavaScript中的await/async的作用和用法
2016/10/31 Javascript
详解微信小程序 wx.uploadFile 的编码坑
2017/01/23 Javascript
angular+webpack2实战例子
2017/05/23 Javascript
JavaScript 扩展运算符用法实例小结【基于ES6】
2019/06/17 Javascript
解决Vue router-link绑定事件不生效的问题
2020/07/22 Javascript
Python在Windows和在Linux下调用动态链接库的教程
2015/08/18 Python
Windows下将Python文件打包成.EXE可执行文件的方法
2018/08/03 Python
python实现自动获取IP并发送到邮箱
2018/12/26 Python
python实现对列表中的元素进行倒序打印
2019/11/23 Python
python爬虫开发之urllib模块详细使用方法与实例全解
2020/03/09 Python
Python批量修改xml的坐标值全部转为整数的实例代码
2020/11/26 Python
美国购买肉、鸭、家禽、鹅肝和熟食网站:D’Artagnan
2018/11/13 全球购物
Myprotein芬兰官网:欧洲第一运动营养品牌
2019/05/05 全球购物
Bibloo罗马尼亚网站:女装、男装、童装及鞋子和配饰
2019/07/20 全球购物
中专生自我鉴定
2013/12/17 职场文书
运动会入场式解说词
2014/02/18 职场文书
《独坐敬亭山》教学反思
2014/04/08 职场文书
酒店管理毕业生自荐信
2014/05/25 职场文书
医生个人自我剖析材料
2014/10/08 职场文书
公安机关纪律作风整顿剖析
2014/10/10 职场文书
2016幼儿园新学期寄语
2015/12/03 职场文书
关于考试抄袭的检讨书
2019/11/02 职场文书
Python爬虫基础之爬虫的分类知识总结
2021/05/13 Python
Python自动化之批量处理工作簿和工作表
2021/06/03 Python
golang生成并解析JSON
2022/04/14 Golang