删除所有子元素的CLASS

AnA*_*ice 69 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>
Run Code Online (Sandbox Code Playgroud)

使用表过滤器作为jQuery选择器,如何清除元素CLASS=ACTIVE,无论LI它恰好在哪个?

谢谢

Joe*_*oel 119

这应该工作:

$("#table-filters>ul>li.active").removeClass("active");
//Find all `li`s with class `active`, children of `ul`s, children of `table-filters`
Run Code Online (Sandbox Code Playgroud)

  • 上述解决方案不适用于 chrome。所以,我只是将其更改为 $("#table-filters &gt; li.active").removeClass("active");。Tq。 (2认同)

ins*_*iac 33

你也可以这样做:

  $("#table-filters li").parent().find('li').removeClass("active");
Run Code Online (Sandbox Code Playgroud)

  • 这是可能的,但是jQuery的处理方式更难,所以如果你指望快速响应,你应该使用上面的方法.另外你为什么要选择所有'li',然后让父母找到'li'然后删除活动类?有点没用 (2认同)