[英]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.