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>这行代码。

感谢各位的阅读!文章来源 张占岭

Javascript 相关文章推荐
如何在Mozilla Gecko 用Javascript加载XSL
Jan 09 Javascript
Javascript 获取滚动条位置等信息的函数
Sep 08 Javascript
如何让div span等元素能响应键盘事件操作指南
Nov 13 Javascript
js实现的牛顿摆效果
Mar 31 Javascript
JS+Canvas绘制时钟效果
Aug 20 Javascript
jQuery 特性操作详解及实例代码
Sep 29 Javascript
headjs实现网站并行加载但顺序执行JS
Nov 29 Javascript
微信小程序之圆形进度条实现思路
Feb 22 Javascript
vue 使用Jade模板写html,stylus写css的方法
Feb 23 Javascript
完美解决iview 的select下拉框选项错位的问题
Mar 02 Javascript
js统计页面上每个标签的数量实例代码
May 29 Javascript
Vue框架下引入ActiveX控件的问题解决
Mar 25 Javascript
js实现数组冒泡排序、快速排序原理
Mar 08 #Javascript
Bootstrap多级导航栏(级联导航)的实现代码
Mar 08 #Javascript
javascript html实现网页版日历代码
Mar 08 #Javascript
一道关于JavaScript变量作用域的面试题
Mar 08 #Javascript
理解javascript函数式编程中的闭包(closure)
Mar 08 #Javascript
jQuery实现带水平滑杆的焦点图动画插件
Mar 08 #Javascript
javascript对象的创建和访问
Mar 08 #Javascript
You might like
php环境配置 php5 MySQL5 apache2 phpmyadmin安装与配置图文教程
2007/03/16 PHP
PHP图像处理类库及演示分享
2015/05/17 PHP
PHP随机数 C扩展随机数
2016/05/04 PHP
CodeIgniter记录错误日志的方法全面总结
2016/05/17 PHP
详解PHP安装mysql.so扩展的方法
2016/12/31 PHP
Yii框架批量插入数据扩展类的简单实现方法
2017/05/23 PHP
阿里云PHP SMS短信服务验证码发送方法
2017/07/11 PHP
PHP实现类似题库抽题效果
2018/08/16 PHP
PHP chop()函数讲解
2019/02/11 PHP
PHP开发实现快递查询功能详解
2019/04/08 PHP
PHP中遍历数组的三种常用方法实例分析
2019/06/24 PHP
jQuery 表格插件整理
2010/04/27 Javascript
Node.js实现批量去除BOM文件头
2014/12/20 Javascript
JavaScript实现添加及删除事件的方法小结
2015/08/04 Javascript
JS递归遍历对象获得Value值方法技巧
2016/06/14 Javascript
基于JS实现checkbox全选功能实例代码
2016/10/31 Javascript
JavaScript实现垂直向上无缝滚动特效代码
2016/11/23 Javascript
js实现多行文本框统计剩余字数功能
2017/03/28 Javascript
JavaScript简介_动力节点Java学院整理
2017/06/26 Javascript
Angular.js中数组操作的方法教程
2017/07/31 Javascript
用Webpack构建Vue项目的实践
2017/11/07 Javascript
Vue的土著指令和自定义指令实例详解
2018/02/04 Javascript
vue watch深度监听对象实现数据联动效果
2018/08/16 Javascript
vue使用i18n实现国际化的方法详解
2019/09/05 Javascript
python文件的md5加密方法
2016/04/06 Python
Django 迁移、操作数据库的方法
2019/08/02 Python
django 链接多个数据库 并使用原生sql实现
2020/03/28 Python
Python在字符串中处理html和xml的方法
2020/07/31 Python
解决Python 函数声明先后顺序出现的问题
2020/09/02 Python
python如何实时获取tcpdump输出
2020/09/16 Python
职位说明书范文
2014/05/07 职场文书
项目投资合作意向书
2014/07/29 职场文书
飞屋环游记观后感
2015/06/08 职场文书
python基础之爬虫入门
2021/05/10 Python
MySQL高速缓存启动方法及参数详解(query_cache_size)
2021/07/01 MySQL
nginx服务器的下载安装与使用详解
2021/08/02 Servers