Javascript 如何使用jQuery从html元素中添加或删除类

Javascript 如何使用jQuery从html元素中添加或删除类,javascript,jquery,Javascript,Jquery,我试图在当前的 HTML li 使用$('ul li a.active')选择器并删除所有活动类,然后对当前元素应用活动类 $('ul li a')。单击(函数(e){ e、 预防默认值(); $('ul li a.active')。removeClass('active')) $(this.addClass('active'); }); .active{ 颜色:绿色; } $('ul li a')。单击(函数(e){ e、 预防默认值(); $('ul li a').rem

我试图在当前的

HTML


li

使用
$('ul li a.active')
选择器并删除所有
活动
类,然后对当前元素应用
活动

$('ul li a')。单击(函数(e){
e、 预防默认值();
$('ul li a.active')。removeClass('active'))
$(this.addClass('active');
});
.active{
颜色:绿色;
}

$('ul li a')。单击(函数(e){
e、 预防默认值();
$('ul li a').removeClass('active'))
$(this.addClass('active');
});
.active{color:red}


jQuery
您需要查找不是直接同级的a标记元素,而是当前a标记元素父同级的子元素

使用以下代码查找a标记元素,它们是单击的a标记元素的父级li同级的子级

$(this).addClass('active').parent("li").siblings("li").children("a").removeClass('active');

更新的fiddle:

$(this).addClass('active').parent().sibbins().find('a').removeClass('active')
@PranavCBalan,我觉得调用3种方法有点贵..IMO..@Rayon:只是一种替代方法…:)@普拉纳瓦兰——是的。。一个班轮;)
$('ul li a').click(function(e){
 e.preventDefault();
 $(this).addClass('active').siblings().removeClass('active');
});
$(this).addClass('active').parent("li").siblings("li").children("a").removeClass('active');