Задать вопрос
valgerofficial
@valgerofficial

Как переключать классы у нескольких кнопок сразу?

Имеется 3 кнопки с иконками, по клику на одну из них, вместо предыдущей иконки, появляется иконка с крестиком. Но вот в чем проблема, если кликаешь на другую кнопку, то предыдущая кнопка не меняет свое свойство (то есть не заменяется крестик на предыдущую иконку). И вот вопрос, как сменить класс предыдущей иконки, по клику на другую кнопку? То есть у каждой иконки должна меняться иконка на крестик, а у предыдущей кнопки удаляться.

<!-- Кнопки -->
<div class="header__button">
	<button class="btn header__basket_btn"><i class="feather-shopping"></i></button>
        <button class="btn header__search_btn"><i class="feather-search"></i></button>
	<button class="btn header__user_btn"><i class="feather-user"></i></button>
</div>

Класс должен меняться с .feather-shopping на .feather-close.
  • Вопрос задан
  • 172 просмотра
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 1
Malmind
@Malmind
Насколько понял задачу нужно сделать один выбор из 3 кнопок и кнопка на которую нажал пользователь имеет одну картинку, а остальные имеют другую в это время.
Я это решил не через классы, а с помощью клонирования элементов и шаблонов (тег template).
https://codepen.io/qmalmind/pen/yLMjPBg
Для работы с классами обычно используют:
someVar.classList.add("someClass"); // Добавляет класс
someVar.classList.remove("someClass"); // Убирает класс 
someVar.classList.toggle("someClass"); // По очереди добавляет, убирает
Ответ написан
Ваш ответ на вопрос

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

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