我想选择li(子菜单)中没有“主动跟踪”类的所有ul.menu
HTML:
<ul class="menu">
<li>item 1</li>
<li class="expanded">item 2
<ul class="menu">
<li>sub item a</li>
<li>sub item b</li>
<li>sub item c</li>
</ul>
</li>
<li class="expanded">item 3
<ul class="menu">
<li>sub item d</li>
<li>sub item e</li>
<li>sub item f</li>
</ul>
</li>
<li class="expanded active-trail">item 4
<ul class="menu">
<li>sub item g</li>
<li>sub item h</li>
<li>sub item i</li>
</ul>
</li>
</ul>
JQuery的:
$('#region-menu ul.menu > li.expanded:not:has(active-trail) ul.menu ').addClass('hidden')
答案 0 :(得分:2)
这样做:
$('li.expanded:not(.active-trail) ul.menu').addClass('hidden');
你很近,但:not()
内所需的选择器是.active-trail
类
<强> Demo fiddle 强>
答案 1 :(得分:2)
这是 FIDDLE
$('ul.menu > li.expanded:not(.active-trail) ul.menu ').addClass('hidden');
答案 2 :(得分:1)