Как удалить все классы CSS с помощью jQuery?

Вместо индивидуального вызова $("#item").removeClass() для каждого отдельного элемента, который может иметь элемент, существует ли одна функция, которая может быть вызвана, которая удаляет все классы CSS из данного элемента?

И jQuery, и raw JavaScript будут работать.

+643
15 сент. '09 в 3:34
источник поделиться
12 ответов
$("#item").removeClass();

Вызов removeClass без параметров приведет к удалению всех классов элементов.


Вы также можете использовать (но не обязательно рекомендуется, правильный путь - это выше):

$("#item").removeAttr('class');
$("#item").attr('class', '');
$('#item')[0].className = '';

Если у вас не было jQuery, это будет в значительной степени вашим единственным вариантом:

document.getElementById('item').className = '';
+1237
15 сент. '09 в 3:37
источник

Связанные вопросы


Похожие вопросы

Hang on, does not removeClass() по умолчанию для удаления всех классов, если ничего конкретного не указано? Так

$("#item").removeClass();

сделает это самостоятельно...

+103
15 сент. '09 в 3:38
источник

Просто установите атрибут className реального элемента DOM на '' (ничего).

$('#item')[0].className = ''; // the real DOM element is at [0]

Изменить: Другие люди говорят, что работает только вызов removeClass - я тестировал это с помощью игровой площадки Google JQuery: http://savedbythegoog.appspot.com/?id=ag5zYXZlZGJ5dGhlZ29vZ3ISCxIJU2F2ZWRDb2RlGIS61gEM... и он работает. Таким образом, вы также можете сделать это следующим образом:

$("#item").removeClass();
+11
15 сент. '09 в 3:37
источник

Конечно.

$('#item')[0].className = '';
// or
document.getElementById('item').className = '';
+10
15 сент. '09 в 3:36
источник

Хех, пришел искать аналогичный ответ. Затем он ударил меня.

Удаление конкретных классов

$('.class').removeClass('class');

Скажем, если элемент имеет class= "class another-class"

+9
08 июн. '14 в 18:57
источник

Самый короткий метод

$('#item').removeAttr('class').attr('class', '');
+7
21 янв. '13 в 15:59
источник
$('#elm').removeAttr('class');

больше нет класса attr, который будет присутствовать в "вязах".

+3
08 янв. '14 в 7:18
источник

Мне нравится использовать native js, это нужно, верьте или нет!

1.

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

2.

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

пути jQuery

  • $("#item").removeClass();

  • $("#item").removeClass("class1 ... classn");

+2
13 июн. '17 в 3:56
источник

Вы можете просто попробовать

$(document).ready(function() {
   $('body').find('#item').removeClass();
});

Если вам нужно получить доступ к этому элементу без имени класса, например, вам нужно добавить новое имя класса, вы можете сделать это:

$(document).ready(function() {
   $('body').find('#item').removeClass().addClass('class-name');
});

Я использую эту функцию в своем проекте для удаления и добавления класса в html-конструктор. Удачи.

+1
01 июн. '16 в 19:30
источник

попробуйте removeClass

Например:

var nameClass=document.getElementsByClassName("clase1");
console.log("after", nameClass[0]);
$(".clase1").removeClass();
var nameClass=document.getElementsByClassName("clase1");
console.log("before", nameClass[0]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="clase1">I am Div with class="clase1"</div>
+1
18 янв. '17 в 15:34
источник

Поскольку не все версии jQuery созданы равными, вы можете столкнуться с той же проблемой, что и я, что означает вызов $( "# item" ). removeClass(); фактически не удаляет класс. (Вероятно, ошибка)

Более надежный метод - просто использовать необработанный JavaScript и вообще удалить атрибут класса.

document.getElementById("item").removeAttribute("class");
0
20 июн. '16 в 16:29
источник

У меня была аналогичная проблема. В моем случае на отключенных элементах был применен класс aspNetDisabled и все отключенные элементы управления имели неправильные цвета. Таким образом, я использовал jquery для удаления этого класса на каждом элементе/элементе управления, в котором я привык, и все работает и отлично выглядит сейчас.

Это мой код для удаления класса aspNetDisabled:

$(document).ready(function () {

    $("span").removeClass("aspNetDisabled");
    $("select").removeClass("aspNetDisabled");
    $("input").removeClass("aspNetDisabled");

}); 
-1
14 мая '14 в 14:57
источник

Посмотрите другие вопросы по меткам или Задайте вопрос