jQuery:如果类存在,请移除它,然后将它添加到新元素中

jQuery: If class exists, remove it, then add it to new element

本文关键字:新元素 添加 元素 然后 存在 jQuery 如果      更新时间:2023-09-26

我正在制作手风琴风格的视频部分。我当前正在尝试在单击时检查是否存在类。我希望它一次只打开一个部分,所以我需要

  1. 单击时检查类是否存在
  2. 如果是,请移除类
  3. 将类添加到单击的元素

我试着只用addClass();toggleClass();来做这件事,但不能100%确定我遗漏了什么。

添加类

$(".contents-row").click(function(){
    $(this).toggleClass("content-open");
}); 

切换类

$('.contents-row').click(function(){
    $(this).toggleClass('content-open');
});

这是基本的HTML设置

<div class="contents-row">
    <div class="content-option press">
        <div class="class-section-title">test1</div>
    </div>
    <div class="drop">
        test 1
    </div>
</div>

JSFiddle下拉列表的完整版本。

谢谢你的帮助!

首先从具有content-open类的所有元素中删除content-open类。然后将类添加到单击的元素中,如下所示。

$('.contents-row').click(function(){
    $('.content-open').removeClass('content-open');
    $(this).addClass('content-open');
});

您需要先从具有类contents-row的所有div中删除类content-open,然后添加到当前单击的div中。

$('.contents-row').click(function(){
    $('.contents-row').removeClass('content-open');
    $(this).toggleClass('content-open');
});