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 相关文章推荐
fireworks菜单生成器mm_menu.js在 IE 7.0 显示问题的解决方法
Oct 20 Javascript
Javascript学习笔记2 函数
Jan 11 Javascript
基于jquery tab切换(防止页面刷新)
May 23 Javascript
Javascript 判断是否存在函数的方法
Jan 03 Javascript
JQuery实现倒计时按钮具体方法
Nov 14 Javascript
究竟什么是Node.js?Node.js有什么好处?
May 29 Javascript
浅谈$(document)和$(window)的区别
Jul 15 Javascript
Bootstrap的class样式小结
Dec 01 Javascript
javascript实现table单元格点击展开隐藏效果(实例代码)
Apr 10 Javascript
bootstrap 弹出框modal添加垂直方向滚轴效果
Jul 09 Javascript
JavaScript设计模式之工厂模式和抽象工厂模式定义与用法分析
Jul 26 Javascript
微信小程序点击保存图片到本机功能
Dec 13 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
漂亮但不安全的CTB
2006/10/09 PHP
PHP开发中常用的8个小技巧
2008/08/27 PHP
PHP中函数rand和mt_rand的区别比较
2012/12/26 PHP
两千行代码的PHP学习笔记汇总
2014/10/05 PHP
phplot生成图片类用法详解
2015/01/06 PHP
smarty高级特性之对象的使用方法
2015/12/25 PHP
Laravel Memcached缓存驱动的配置与应用方法分析
2016/10/08 PHP
php使用gd2绘制基本图形示例(直线、圆、正方形)
2017/02/15 PHP
phpstorm 配置xdebug的示例代码
2019/03/31 PHP
javascript 拖动表格行实现代码
2011/05/05 Javascript
关于 文本框默认值 的操作js代码
2012/01/12 Javascript
再JavaScript的jQuery库中编写动画效果的指南
2015/08/13 Javascript
Javascript 使用ajax与C#获取文件大小实例详解
2017/01/13 Javascript
AngularJS Select(选择框)使用详解
2017/01/18 Javascript
原生js实现轮播图
2017/02/27 Javascript
详解node+express+ejs+bootstrap构建项目
2017/09/27 Javascript
详解vue表单——小白速看
2018/04/08 Javascript
vue打包的时候自动将px转成rem的操作方法
2018/06/20 Javascript
[00:39]DOTA2上海特级锦标赛 Liquid战队宣传片
2016/03/04 DOTA
[58:00]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant BO3 第二场 2月7日
2021/03/11 DOTA
Python 自动安装 Rising 杀毒软件
2009/04/24 Python
Python urllib模块urlopen()与urlretrieve()详解
2013/11/01 Python
python实现在windows下操作word的方法
2015/04/28 Python
python实现的正则表达式功能入门教程【经典】
2017/06/05 Python
python中PS 图像调整算法原理之亮度调整
2019/06/28 Python
python将logging模块封装成单独模块并实现动态切换Level方式
2020/05/12 Python
win10安装python3.6的常见问题
2020/07/01 Python
Camille Jewelry官网:现代女性时尚首饰
2019/07/07 全球购物
俄罗斯连接商品和买家的在线平台:goods.ru
2020/11/30 全球购物
财务会计人员求职的自我评价
2014/01/13 职场文书
计算机学生求职信范文
2014/01/30 职场文书
摄影展策划方案
2014/06/02 职场文书
幼儿园母亲节活动总结
2015/02/10 职场文书
护士长2015年终工作总结
2015/04/24 职场文书
个人合作协议范本
2015/08/06 职场文书
电频谱管理的原则是什么
2022/02/18 无线电