Menghapus banyak kelas (jQuery)

615

Apakah ada cara yang lebih baik untuk menulis ulang ini:

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

Saya tidak dapat menggunakan removeClass();karena akan menghapus SEMUA kelas, yang tidak saya inginkan.

eozzy
sumber

Jawaban:

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

Dari removeClass(), parameter kelas:

Satu atau lebih kelas CSS untuk dihapus dari elemen, ini dipisahkan oleh spasi.

cletus
sumber
66

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

Ini dokumennya .

Scott Evernden
sumber
19

.removeClass()dokumentasi jQuery .

Satu atau lebih kelas CSS untuk dihapus dari elemen, ini dipisahkan oleh spasi.

SeanJA
sumber
17

The dokumentasi mengatakan:

class (Optional) String
Satu atau lebih kelas CSS untuk dihapus dari elemen, ini dipisahkan oleh spasi.

Contoh:

Hapus kelas 'biru' dan 'di bawah' dari elemen yang cocok.

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

Ada banyak cara untuk melakukannya!

jQuery

  1. hapus semua kelas
    $("element").removeClass();
    ATAU
    $("#item").removeAttr('class');
    ATAU
    $("#item").attr('class', '');
    ATAU
    $('#item')[0].className = '';

  2. hapus multi class
    $("element").removeClass("class1 ... classn");
    ATAU
    $("element").removeClass("class1").removeClass("...").removeClass("classn");

Vanilla Javascript

  1. hapus semua kelas

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

  1. hapus multi class

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

xgqfrms
sumber
2

Pisahkan kelas dengan warna putih space

$('element').removeClass('class1 class2');
codemirror
sumber
1

Anda harus memisahkan kelas-kelas yang ingin Anda hapus dengan spasi$('selector').removeClass('class1 class2');

Avishek Mondal
sumber
0

Sejak jQuery 3.3.0 , dimungkinkan untuk meneruskan array ke .addClass(),. removeClass()dan toggleClass(), yang membuatnya lebih mudah jika ada logika yang menentukan kelas mana yang harus ditambahkan atau dihapus, karena Anda tidak perlu dipusingkan dengan string yang dibatasi ruang.

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