删除多个类(jQuery)

时间:2009-09-28 06:10:43

标签: jquery css

有没有更好的方法来重写这个:

$('element').removeClass('class1').removeClass('class2');

我无法使用 removeClass(); ,因为它会删除所有我不想要的类。

8 个答案:

答案 0 :(得分:1051)

$("element").removeClass("class1 class2");

removeClass()开始,类参数:

  

要删除的一个或多个CSS类   元素,这些是分开的   空格。

答案 1 :(得分:58)

$('element').removeClass('class1 class2');

Here是文档。

答案 2 :(得分:18)

http://docs.jquery.com/Attributes/removeClass

要从元素中删除的一个或多个CSS类,这些类由空格分隔。

答案 3 :(得分:15)

documentation说:

  

class (Optional) String
  要从元素中删除的一个或多个CSS类,这些类由空格分隔。

示例:

  

从匹配的元素中删除“blue”和“under”类。

$("p:odd").removeClass("blue under");

答案 4 :(得分:8)

有很多方法可以做到这一点!

<强>的jQuery

  1. 删除所有课程
    $("element").removeClass();
    OR
    $("#item").removeAttr('class');
    OR
    $("#item").attr('class', '');
    OR
    $('#item')[0].className = '';

  2. 删除多级
    $("element").removeClass("class1 ... classn");
    OR
    $("element").removeClass("class1").removeClass("...").removeClass("classn");

  3. 原生Javascript

    1. 删除所有课程
    2. // remove all items all class  
      const items = document.querySelectorAll('item');
      for (let i = 0; i < items.length; i++) {
          items[i].className = '';
      }

      1. 删除多课程
      2. // only remove all class of first item
        const item1 = document.querySelector('item');
        item1.className = '';

答案 5 :(得分:1)

您必须用空格将要删除的类分开$('selector').removeClass('class1 class2');

答案 6 :(得分:0)

用白色space

分隔班级
$('element').removeClass('class1 class2');

答案 7 :(得分:0)

自jQuery 3.3.0起,就可以将数组传递给.addClass(),。removeClass()toggleClass(),这使得如果有确定哪个类的逻辑变得容易了应该添加或删除,因为您无需弄乱以空格分隔的字符串。

$("div").removeClass(["class1", "class2"]);