Jquery 删除所有子元素的类

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> 废话 废话 废话 废话

给定以下HTML:

<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。