4

我有一个可点击元素的列表,它们都具有相同的类名。我想为单击的元素分配一个类activeactive同时从所有其他元素中删除。我如何通过 jQuery 做到这一点?

<div class="container">  
    <div class="element"></div>
    <div class="element active"></div>
    <div class="element"></div>
</div>
4

4 回答 4

5

只需挂上元素,从任何拥有它click的元素中删除,然后将其添加到单击的元素中:.elementactive.element

$(".element").click(function() {
    $(".element.active").removeClass("active");
    $(this).addClass("active");
});

更多:jQuery/$, click, removeClass,addClass

于 2013-03-26T08:33:34.597 回答
2

使用这种方式addClass().siblings()

$('.element').click(function(){
  $(this).addClass('active').siblings().removeClass('active');
});

$(this)是被单击的当前元素,因此该元素获取类.active.siblings().removeClass()删除.active应用于其他元素的其他类。

查看演示

于 2013-03-26T08:33:43.503 回答
1
$('.element').click(function() {
  $('.element').removeClass('active');
  $(this).addClass('active');
});
于 2013-03-26T08:33:26.693 回答
1

尝试这个:

$('.element').click(function(){
    $('.element').removeClass('active');
    $(this).addClass('active');
});
于 2013-03-26T08:33:16.333 回答