Jquery 删除所有子元素的类
给定以下HTML:Jquery 删除所有子元素的类,jquery,css-selectors,Jquery,Css Selectors,给定以下HTML: <div id="table-filters"> <ul> <li class="active">blah</li> <li>blah</li> <li>blah</li> <li>blah</li> </ul> </div> 废话 废话 废话 废话
<div id="table-filters">
<ul>
<li class="active">blah</li>
<li>blah</li>
<li>blah</li>
<li>blah</li>
</ul>
</div>
- 废话
- 废话
- 废话
- 废话
使用表过滤器作为jQuery选择器,如何清除具有CLASS=ACTIVE
的元素,而不管它恰好处于启用状态的LI
谢谢这应该可以:
$("#table-filters>ul>li.active").removeClass("active");
//Find all `li`s with class `active`, children of `ul`s, children of `table-filters`
您也可以这样做:
$("#table-filters li").parent().find('li').removeClass("active");
这是可能的,但对于jQuery来说要处理起来要困难得多,所以如果您指望快速响应,那么应该使用上面的方法。还有,为什么要选择所有“li”,然后让父级查找“li”,然后删除活动类?有点低效..正如我上面提到的,这是另一种方法。当选择器本身太宽,并且您希望限制为单个
父元素的子元素时,这很有帮助。上述解决方案在chrome中不起作用。所以,我只是将它改为$(“#table filters>li.active”).removeClass(“active”);了;。Tq。