Как удалить все классы элемента, кроме одного, с помощью jQuery

Изучите простые и эффективные способы удаления всех классов у элемента, кроме одного, с использованием библиотеки jQuery. Эти советы помогут вам упростить вашу работу с CSS-классами и сделать код более чистым и управляемым.


Используйте метод removeClass для удаления всех классов у элемента, кроме одного. Пример: $(элемент).removeClass().addClass(оставляемый_класс);

Уроки JavaScript - #17 - Добавление и удаление элементов с помощью DOM

Создайте функцию, которая сохраняет нужный класс, удаляя остальные: function clearClasses(elem, keepClass) { $(elem).attr(class, keepClass); }

Js работа со стилями, className, classList, add, remove, toggle, добавление удаление и переключение

Для более сложных сценариев используйте регулярные выражения для фильтрации классов: $(элемент).attr(class, function(i, c) { return c.replace(/(?!оставляемый_класс)/S+/g, ); });

Уроки jQuery / Методы addClass и removeClass - добавляем и удаляем классы - для начинающих

Используйте метод not для исключения определенного класса из удаления: $(элемент).removeClass(function(index, className) { return className.split( ).filter(c =>c !== оставляемый_класс).join( ); });

How to Add Class, Remove Class \u0026 Toggle Class in jQuery

При работе с динамическими данными используйте комбинацию методов hasClass и removeClass: if ($(элемент).hasClass(оставляемый_класс)) { $(элемент).removeClass().addClass(оставляемый_класс); }

Add and Remove Active Class on Click

Примените метод toggleClass для добавления или удаления классов условно: $(элемент).toggleClass(оставляемый_класс, true); $(элемент).toggleClass(function(index, className) { return className !== оставляемый_класс; }, false);

Если у элемента может быть несколько оставляемых классов, используйте массив для хранения этих классов и фильтрацию: let keepClasses = [class1, class2]; $(элемент).removeClass(function(index, className) { return className.split( ).filter(c =>!keepClasses.includes(c)).join( ); });

Для упрощения удаления используйте плагин jQuery, который управляет классами: $.fn.clearClasses = function(keepClass) { return this.each(function() { $(this).attr(class, keepClass); }); }; $(элемент).clearClasses(оставляемый_класс);

Работа со стилями - className, classList, add, remove, toggle

Примените map для создания списка оставляемых классов перед удалением остальных: let keep = $(элемент).map(function() { return $(this).hasClass(оставляемый_класс) ? оставляемый_класс : ; }).get().join( ); $(элемент).removeClass().addClass(keep);

Добавление и удаление атрибутов на jQuery, attr() и removeAttr(), урок 15

Используйте addClass после удаления всех классов для повторного добавления нужного: $(элемент).removeClass().addClass(оставляемый_класс);

Добавление и удаление классов на jQuery, addClass() и removeClass(), урок 16

Раздел: Гаджеты