繁体   English   中英

引导程序和自定义下拉菜单

[英]bootstrap and custom dropdown menu

我正在使用引导程序3,并且我有一个页面,该页面的内容是使用require_once()动态加载的。 我有一个用于部分的下拉菜单。

<ul class="nav nav-list">
                <li class="active">
                    <a href="<?php echo WEB_ROOT; ?>admin">
                        <i class="menu-icon fa fa-tachometer"></i>
                        <span class="menu-text"> Dashboard</span>
                    </a>

                    <b class="arrow"></b>
                </li>

                <li class="">
                    <a href="#" class="dropdown-toggle">
                        <i class="menu-icon fa fa-desktop"></i>
                        <span class="menu-text"> Catalog </span>

                        <b class="arrow fa fa-angle-down"></b>
                    </a>

                    <b class="arrow"></b>

                    <ul class="submenu">


                <li class="">
                    <a href="<?php echo WEB_ROOT; ?>admin/product/">
                        <i class="menu-icon fa fa-list-alt"></i>
                        <span class="menu-text"> Products </span>
                    </a>

                    <b class="arrow"></b>
                </li>

                    <li class="">
                    <a href="<?php echo WEB_ROOT; ?>admin/category/">
                        <i class="menu-icon fa fa-list-alt"></i>
                        <span class="menu-text"> Categories </span>
                    </a>

                    <b class="arrow"></b>
                </li>   
                    </ul>
                </li>

            </ul>

我要做的是在选择一个部分时保持打开菜单,在适当的部分中移动<li class = "active"> 如果页面是静态的,那会更容易,但是用这种方式呢?

我不知道该怎么做。 这里有一个演示的链接

谢谢

在页面顶部设置此变量。

<?php $currenturl =  "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; ?>

在菜单的每个班级部分尝试此三元

<?php (WEB_ROOT . 'admin/product/' == $currenturl)? 'active' : NULL ?>

(显然,更改每个URL的其余路径)。

如果您想保持一定的下拉列表打开状态,则可以在每个url的末尾添加一个查询字符串,例如

<?php echo WEB_ROOT; ?>admin/product?menu=catalog">

并在页面上使用

<ul class="submenu <?php if(isset($_GET['menu')){ ($_GET['menu'] == 'catalog')? 'open' : NULL; } ?>">

在目录子菜单的类中。 保持菜单打开:)。

在为“ li's”指定一些名称或id后,可以组合使用jquery函数:

$("#id").click(function(){
   $("#id").addClass("active);
});

提供@@ Matt Burrow涵盖的PHP的JS实现。 由于URL将始终与锚元素的href中单击的链接匹配,因此我们可以将其设为活动项。

$(function(){
    $('a[href="'+window.location.href+'"]').addClass('active');
});

当然,尽管这肯定会破坏具有查询字符串和哈希值的URL。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM