Mehrere Klassen entfernen (jQuery)


615

Gibt es einen besseren Weg, dies umzuschreiben:

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

Ich kann nicht verwenden, removeClass();da es ALLE Klassen entfernen würde, die ich nicht möchte.

Antworten:


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

Aus removeClass()dem Klassenparameter:

Eine oder mehrere CSS-Klassen, die aus den Elementen entfernt werden sollen, sind durch Leerzeichen getrennt.



19

jQuery- .removeClass()Dokumentation.

Eine oder mehrere CSS-Klassen, die aus den Elementen entfernt werden sollen, sind durch Leerzeichen getrennt.


17

Die Dokumentation sagt:

class (Optional) String
Eine oder mehrere CSS-Klassen, die aus den Elementen entfernt werden sollen, sind durch Leerzeichen getrennt.

Beispiel:

Entfernen Sie die Klassen 'blau' und 'unter' aus den übereinstimmenden Elementen.

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

12

Es gibt viele Möglichkeiten, dies zu tun!

jQuery

  1. Entfernen Sie alle Klassen
    $("element").removeClass();
    ODER
    $("#item").removeAttr('class');
    ODER
    $("#item").attr('class', '');
    ODER
    $('#item')[0].className = '';

  2. Multi-Class-
    $("element").removeClass("class1 ... classn");
    OR entfernen
    $("element").removeClass("class1").removeClass("...").removeClass("classn");

Vanille-Javascript

  1. entferne alle Klassen

// remove all items all class  
const items = document.querySelectorAll('item');
for (let i = 0; i < items.length; i++) {
    items[i].className = '';
}

  1. Multi-Klasse entfernen

// only remove all class of first item
const item1 = document.querySelector('item');
item1.className = '';


2

Klassen durch Weiß trennen space

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

1

Sie müssen die Klassen, die Sie entfernen möchten, durch Leerzeichen trennen$('selector').removeClass('class1 class2');


0

Seit jQuery 3.3.0 ist es möglich, Arrays an .addClass(),. removeClass()und toggleClass(), was es einfacher macht, wenn es eine Logik gibt, die bestimmt, welche Klassen hinzugefügt oder entfernt werden sollen, da Sie nicht mit den durch Leerzeichen getrennten Zeichenfolgen herumspielen müssen.

$("div").removeClass(["class1", "class2"]); 
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.