Bootstrap多级导航栏(级联导航)的实现代码


Posted in Javascript onMarch 08, 2016

在bootstrap官方来说,导航最多就是两级,两级以上是无法实现的,大叔找了一些第三方的资料,终于找到一个不错的插件,使用上和效果上都还不错,现在和大家分享一下

插件地址:http://vsn4ik.github.io/bootstrap-submenu/

先看一下,在后台系统上的显示效果

Bootstrap多级导航栏(级联导航)的实现代码

下面说一下实现的方式

1.引用三个JS插件和一个CSS类库

<script src="~/Content/bootstraps/JS/bootstrap-submenu.js"></script>
<script src="~/Content/bootstraps/JS/highlight.min.js"></script>
<script src="~/Content/bootstraps/JS/docs.js"></script>
<link href="~/Content/bootstraps/CSS/bootstrap-submenu.css" rel="stylesheet" />

2.插入对应的HTML代码块,本例子没有使用递归生成代码,使用了静态的三级结构,这样看着更清晰,真正的生产环境建议使用递归去生产菜单

<ul class="nav nav-pills">
@foreach (var item in Model)
{
if (item.Sons != null && item.Sons.Count > 0)
{
<li class="dropdown">
<a data-submenu="" data-toggle="dropdown" tabindex="0">@item.MenuName<span class="caret"></span></a>
<ul class="dropdown-menu">
@foreach (var sub in item.Sons)
{
if (sub.Sons != null && item.Sons.Count > 0)
{
<li class="dropdown-submenu">
<a tabindex="0">@sub.MenuName</a>
<ul class="dropdown-menu">
@foreach (var inner in sub.Sons)
{
<li>
<a href="@inner.LinkUrl">@inner.MenuName</a>
</li>
}
</ul>
</li>
<li class="divider"></li>
}
else
{
<li><a href="@sub.LinkUrl">@sub.MenuName</a></li>
}
}
</ul>
</li>
}
else
{
<li><a href="@item.LinkUrl">@item.MenuName</a></li>
}
}
</ul>

最后的效果就是第一个图了,值得注意的是,如果希望每个菜单之间使用分割线,可以添加 <li class="divider"></li>这行代码。

下面给大家推荐一段代码有关Bootstrap多级级联菜单

<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
<div class="container-fluid">
<a data-target=".nav-collapse" data-toggle="collapse" class="btn btn-navbar">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<a href="#" class="brand">Project name</a>
<div class="nav-collapse">
<ul class="nav">
<li class="active">
<a href="#">Home</a>
</li>
<li>
<a href="#">Link</a>
</li>
<li>
<a href="#">Link</a>
</li>
<li>
<a href="#">Link</a>
</li>
<li class="dropdown">
<a data-toggle="dropdown" class="dropdown-toggle" href="#">
Dropdown
<b class="caret"></b>
</a>
<ul class="dropdown-menu">
<li class="dropdown-submenu">
<a href="#">More options</a>
<ul class="dropdown-menu">
<li>
<a href="#">Second level link</a>
</li>
<li>
<a href="#">Second level link</a>
</li>
<li>
<a href="#">Second level link</a>
</li>
<li>
<a href="#">Second level link</a>
</li>
<li class="dropdown-submenu">
<a href="#">Second level link</a>
<ul class="dropdown-menu">
<li>
<a href="#">3333333333</a>
</li>
</ul>
</li>
</ul>
</li>
<li>
<a href="#">Another action</a>
</li>
<li>
<a href="#">Something else here</a>
</li>
<li class="divider"></li>
<li class="nav-header">Nav header</li>
<li>
<a href="#">Separated link</a>
</li>
<li>
<a href="#">One more separated link</a>
</li>
</ul>
</li>
</ul>
<form action="" class="navbar-search pull-left">
<input type="text" placeholder="Search" class="search-query span2">
</form>
<ul class="nav pull-right">
<li>
<a href="#">Link</a>
</li>
<li class="divider-vertical"></li>
<li class="dropdown">
<a class="#" href="#">Menu</a>
</li>
</ul>
</div><!-- /.nav-collapse -->
</div>
</div>
</div>
<hr />
<ul class="nav nav-pills">
<li class="active">
<a href="#">Regular link</a>
</li>
<li class="dropdown">
<a href="#" data-toggle="dropdown" class="dropdown-toggle">
Dropdown
<b class="caret"></b>
</a>
<ul class="dropdown-menu" id="menu1">
<li class="dropdown-submenu">
<a href="#">More options</a>
<ul class="dropdown-menu">
<li>
<a href="#">Second level link</a>
</li>
<li>
<a href="#">Second level link</a>
</li>
<li>
<a href="#">Second level link</a>
</li>
<li>
<a href="#">Second level link</a>
</li>
<li>
<a href="#">Second level link</a>
</li>
</ul>
</li>
<li>
<a href="#">Another action</a>
</li>
<li>
<a href="#">Something else here</a>
</li>
<li class="divider"></li>
<li>
<a href="#">Separated link</a>
</li>
</ul>
</li>
<li class="dropdown">
<a href="#">Menu</a>
</li>
<li class="dropdown">
<a href="#">Menu</a>
</li>
</ul>

以上所述是小编给大家介绍的Bootstrap多级导航栏(级联导航)的实现代码,希望对大家有所帮助!

Javascript 相关文章推荐
jQuery不间断滚动效果(模拟百度新闻支持文字/图片/垂直滚动)
Feb 05 Javascript
jquery解决图片路径不存在执行替换路径
Feb 06 Javascript
js动态创建标签示例代码
Jun 09 Javascript
JS判断来路是否是百度等搜索索引进行弹窗或自动跳转的实现代码
Oct 09 Javascript
JavaScript正则表达式实例详解
Oct 16 Javascript
JS针对Array的各种操作汇总
Nov 29 Javascript
jQuery实现鼠标经过显示动画边框特效
Mar 24 jQuery
JS获取input[file]的值并显示在页面的实现方法
Mar 09 Javascript
JS 实现微信扫一扫功能
Sep 14 Javascript
Vue+ElementUI使用vue-pdf实现预览功能
Nov 26 Javascript
微信小程序getLocation 需要在app.json中声明permission字段
Mar 03 Javascript
js实现简单的贪吃蛇游戏
Apr 23 Javascript
javascript html实现网页版日历代码
Mar 08 #Javascript
一道关于JavaScript变量作用域的面试题
Mar 08 #Javascript
理解javascript函数式编程中的闭包(closure)
Mar 08 #Javascript
jQuery实现带水平滑杆的焦点图动画插件
Mar 08 #Javascript
javascript对象的创建和访问
Mar 08 #Javascript
js获取当前日期时间及其它日期操作汇总
Mar 08 #Javascript
使用JQuery实现智能表单验证功能
Mar 08 #Javascript
You might like
php数据库配置文件一般做法分享
2012/07/07 PHP
将二维数组转为一维数组的2种方法
2014/05/26 PHP
基于php的微信公众平台开发入门实例
2015/04/15 PHP
微信支付开发动态链接Native支付
2016/07/12 PHP
新老版本juqery获取radio对象的方法
2010/03/01 Javascript
单独使用CKFinder选择图片的方法
2010/08/21 Javascript
JS获取并操作iframe中元素的方法
2013/03/21 Javascript
关于Javascript作用域链的八点总结
2013/12/06 Javascript
利用jQuary实现文字浮动提示效果示例代码
2013/12/26 Javascript
jQuery中:animated选择器用法实例
2014/12/29 Javascript
深入理解JavaScript系列(29):设计模式之装饰者模式详解
2015/03/03 Javascript
一张Web前端的思维导图分享
2015/07/03 Javascript
javascript检测flash插件是否被禁用的方法
2016/01/14 Javascript
原生JS实现圆环拖拽效果
2017/04/07 Javascript
基于vue-cli配置lib-flexible + rem实现移动端自适应
2017/12/26 Javascript
JS中promise化微信小程序api
2018/04/12 Javascript
layer iframe 设置关闭按钮的方法
2019/09/12 Javascript
JS判断浏览器类型与操作系统的方法分析
2020/04/30 Javascript
JavaScript字符和ASCII实现互相转换
2020/06/03 Javascript
vue接通后端api以及部署到服务器操作
2020/08/13 Javascript
[01:24:51]2014 DOTA2华西杯精英邀请赛 5 25 LGD VS NewBee第二场
2014/05/26 DOTA
python通过装饰器检查函数参数数据类型的方法
2015/03/13 Python
用Python抢过年的火车票附源码
2015/12/07 Python
python3批量删除豆瓣分组下的好友的实现代码
2016/06/07 Python
pandas 两列时间相减换算为秒的方法
2018/04/20 Python
Python实现的多进程和多线程功能示例
2018/05/29 Python
Python中staticmethod和classmethod的作用与区别
2018/10/11 Python
超30万乐谱下载:Musicnotes.com
2016/09/24 全球购物
Java的类可以定义为Protected或者Private得吗
2015/09/25 面试题
英文简历中的自我评价
2013/10/06 职场文书
委托书模板
2014/04/04 职场文书
素质教育标语
2014/06/27 职场文书
交警作风整顿剖析材料
2014/10/11 职场文书
教师节倡议书2015
2015/04/27 职场文书
预备党员半年考察意见
2015/06/01 职场文书
健身房被搭讪?用python写了个小米计时器助人为乐
2021/06/08 Python