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 相关文章推荐
文本框文本自动补全效果示例分享
Jan 19 Javascript
JavaScript数据结构与算法之栈详解
Mar 12 Javascript
原生js和jquery实现图片轮播淡入淡出效果
Apr 23 Javascript
解决js图片加载时出现404的问题
Nov 30 Javascript
JavaScript简单获取系统当前时间完整示例
Aug 02 Javascript
学习vue.js表单控件绑定操作
Dec 05 Javascript
微信开发之企业付款到银行卡接口开发的示例代码
Sep 18 Javascript
详解JavaScript中typeof与instanceof用法
Oct 24 Javascript
JavaScript实现汉字转换为拼音及缩写的方法示例
Mar 28 Javascript
vue跳转同一个组件,参数不同,页面接收值只接收一次的解决方法
Nov 05 Javascript
在vue中对数组值变化的监听与重新响应渲染操作
Jul 17 Javascript
前端框架ECharts dataset对数据可视化的高级管理
Dec 24 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为表单获取的URL 地址预设 http 字符串函数代码
2010/05/26 PHP
PHP中Fatal error session_start()错误解决步骤
2014/08/05 PHP
谈谈PHP连接Access数据库的注意事项
2016/08/12 PHP
PHP 读取大文件并显示的简单实例(推荐)
2016/08/12 PHP
img标签中onerror用法
2009/08/13 Javascript
Jquery知识点二 jquery下对数组的操作
2011/01/15 Javascript
jquery中eq和get的区别与使用方法
2011/04/14 Javascript
Jquery 一次处理多个ajax请求的代码
2011/09/02 Javascript
基于jquery的弹出提示框始终处于窗口的居中位置(类似于alert弹出框的效果)
2011/09/28 Javascript
jquery设置元素的readonly和disabled的写法
2013/09/22 Javascript
Javascript Memoizer浅析
2014/10/16 Javascript
JavaScript中document对象使用详解
2015/01/06 Javascript
JavaScript返回网页中超链接数量的方法
2015/04/03 Javascript
JavaScript中的Math.LN2属性用法详解
2015/06/12 Javascript
js的各种排序算法实现(总结)
2016/07/23 Javascript
ionic隐藏tabs的方法
2016/08/29 Javascript
Vue.js快速入门教程
2016/09/07 Javascript
jQuery实现表格文本框淡入更改值后淡出效果
2016/09/27 Javascript
js实现网页的两个input标签内的数值加减(示例代码)
2017/08/15 Javascript
关于Mac下安装nodejs、npm和cnpm的教程
2018/04/11 NodeJs
vue 之 .sync 修饰符示例详解
2018/04/21 Javascript
JavaScript迭代器的含义及用法
2019/06/21 Javascript
js实现AI五子棋人机大战
2020/05/28 Javascript
Python实现多线程HTTP下载器示例
2017/02/11 Python
Python面向对象类继承和组合实例分析
2018/05/28 Python
Python3导入CSV文件的实例(跟Python2有些许的不同)
2018/06/22 Python
完美解决python中ndarray 默认用科学计数法显示的问题
2018/07/14 Python
python按修改时间顺序排列文件的实例代码
2019/07/25 Python
django创建简单的页面响应实例教程
2019/09/06 Python
11月升旗仪式讲话稿
2014/02/15 职场文书
幼儿园端午节活动方案
2014/08/25 职场文书
不尊敬老师检讨书范文
2014/11/19 职场文书
冲出亚马逊观后感
2015/06/03 职场文书
餐厅服务员管理制度
2015/08/05 职场文书
python实现图片九宫格分割的示例
2021/04/25 Python
使用kubeadm命令行工具创建kubernetes集群
2022/03/31 Servers