AlexaShemetova
@AlexaShemetova
While I'm breathing - I love and believe

Как удалить все классы, кроме одного?

Есть ли способ удалить все классы у элемента кроме одного на чистом js?
Пример такой, есть див, к слову хотелось бы оставить на месте base-class, а остальные удалить, это возможно? При условии, что я не знаю именования других классов, кроме base-class, другие добавляются динамически
<div class="base-class class-2 class-3 class-4"></div>
  • Вопрос задан
  • 4287 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
const className = 'класс, который не надо удалять';


// Если известно, что класс присутствует или должен быть добавлен в случае отсутствия:
element.className = className;

// Если известно, что класс отсутствует и не должен быть добавлен:
element.className = '';

// Если неизвестно, присутствует ли класс и в случае отсутствия он не должен быть добавлен:
element.className = element.classList.contains(className) ? className : '';
// или
element.classList.remove(...[...element.classList].filter(n => n !== className));
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы