我有一些列表,如下所示:
<div id="menu" class="divclass">
<ul id="firstlist">
<li><a href='#'>...</a></li>
<li><a href='#'>...</a></li>
<li><a href='#'>...</a></li>
</ul>
<ul id="secondlist">
<li><a href='#'>...</a></li>
<li><a href='#'>...</a></li>
<li><a href='#'>...</a></li>
</ul>
<!-- etc. - similar unordered lists follow. -->
</div>
当<a>
之一点击元素后,我想清除所有<li>
'active'
其列表的元素类(class)。我一直在摆弄.parent()
, .children()
,和.removeClass('active')
但我认为我完全错过了一些东西,因为我无法让它发挥作用。有人可以帮我吗?这是脚本的开头:
$(document).ready(function() {
$(".divclass ul li a").click(function() { ... }}
哪里.divclass
是包含无序列表的 div 的类。
最佳答案
全部删除
$(".divclass ul li a").click(function() {
$(this).closest('.divclass').find('li').removeClass('active');
}};
仅从同一列表中删除
$(".divclass ul li a").click(function() {
$(this).closest('ul').find('li').removeClass('active');
}};
如果您还想将事件类添加到单击的 li 父级:
$(".divclass ul li a").click(function() {
$(this).parent().addClass('active').siblings().removeClass('active');
}};
关于javascript - jquery/javascript : How do I remove the 'active' class from all the children of a parent element?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23852187/