<ul class="nav sidebar-menu">
<li >
<a href="/admin/index">
<i class="menu-icon glyphicon glyphicon-home"></i>
<span class="menu-text"> 后台首页 </span>
</a>
</li>
<li>
<a href="#" class="menu-dropdown">
<i class="menu-icon fa fa-inbox"></i>
<span class="menu-text"> 产品 </span>
<i class="menu-expand"></i>
</a>
<ul class="submenu">
<li >
<a href="/admin/product/lst">
<span class="menu-text">产品列表</span>
</a>
</li>
<li >
<a href="/admin/size/lst">
<span class="menu-text">码数管理</span>
</a>
</li>
<li >
<a href="/admin/cate/lst">
<span class="menu-text">产品分类</span>
</a>
</li>
</ul>
</li>
<li> //这个li下面的li里面存在active这个class,给这个li增加class="open"
<a href="#" class="menu-dropdown">
<i class="menu-icon fa fa-user"></i>
<span class="menu-text"> 管理员 </span>
<i class="menu-expand"></i>
</a>
<ul class="submenu">
<li >
<a href="/admin/user/lst">
<span class="menu-text">管理员列表</span>
</a>
</li>
<li class="active"> //这个li里面包含了active这个class,我想给上级li增加一个class="open",应该怎么写才对?
<a href="/admin/authrule/lst">
<span class="menu-text">权限列表</span>
</a>
</li>
<li >
<a href="/admin/authgroup/lst">
<span class="menu-text">用户组</span>
</a>
</li>
</ul>
</li>
<li>
<a href="#" class="menu-dropdown">
<i class="menu-icon fa fa-gear"></i>
<span class="menu-text"> 系统设置 </span>
<i class="menu-expand"></i>
</a>
<ul class="submenu">
<li >
<a href="/admin/conf/lst">
<span class="menu-text">配置列表</span>
</a>
</li>
<li >
<a href="/admin/conf/conf">
<span class="menu-text">配置项</span>
</a>
</li>
</ul>
</li>
</ul>
不知道怎麼表述,所以把問題寫在了上面的程式碼裡,麻煩各位大大
为情所困2017-06-26 10:56:05
如果層級不深,可以使用 parents
來獲取獲取,如:
var $menu = $('.sidebar-menu');
var $itemActive = $menu.find('.active'); // 选中项
var $itemActiveParent = $itemActive.parents('li:first'); // 父级
$itemActiveParent.addClass('open');
某草草2017-06-26 10:56:05
想做什麼操作。 。
給你一些程式碼
$(".nav>li").each(function(index){
$(this).find(".submenu>li").each(function(index1){
if($(this).hasClass("active")){
console.log(index,index1);
}
})
})
伊谢尔伦2017-06-26 10:56:05
如果你只是單純的檢查,可以
var $li = targetLi; // 你想判断的某个 li
if ($li.find(">ul>li.active").length) {
// li 的直接下级是 ul,所以它最近的一个下级 li 是 `>ul>li`
// todo 这里是找到有 .active 的 li
}
如果你只是想找到某個選取的 li 的所有父級
$("li.active").parents();
如果是父級中的 li
$("li.active").parents("li");
如果 active 不只一個,可以先用 filter 或加一個條件來找到你需要的那一個。