@ivansimonov1984

Как удалить предыдущий класс?

Здравствуйте
Не получается удалить класс, который добавляется к блокам
т.е
кликаем по первой кнопке - добавили класс .theme-royalblue
кликаем по второй - добавляем новый класс и удаляем предыдущий
На данный момент не получается удалить предыдущий класс
Мой код - fiddle
  • Вопрос задан
  • 159 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
Можно удалять все возможные классы:

const classes = $buttons.get().map(n => n.dataset.set);

$buttons.click(function() {
  $('.current').removeClass('current');
  $(this).addClass('current');

  $blocks.removeClass(classes.join(' ')).addClass(this.dataset.set);
});

Или запоминать последний добавленный:

let currentClass = null;

$buttons.click(function() {
  $('.current').removeClass('current');
  $(this).addClass('current');

  const newClass = this.dataset.set;
  $blocks.removeClass(currentClass).addClass(newClass);
  currentClass = newClass;
});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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