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

При клике на блок внутри него должен появиться класс, как?

У меня есть несколько ссылок при нажатии на которые появляется дропдаун.
Классы у всех ссылок и дропдаунов одинаковые.
Мне нужно что бы при клике на блок, добавлялся класс к блоку на КОТОРЫЙ КЛИКАЮ
Структура кода такая:
<div class="item">
	<span>Ссылка</span>
	<ul class="dropdawn">
		<li>1</li>
		<li>2</li>
		<li>3</li>
	</ul>
</div>

Т.е. нужно чтоб при клике на "item" к нему же и добавлялся класс .open
Этот же класс должен убираться при клике на блок "item" или при клике на всё остальное пространство (кроме клика на сам дропдаун).
Решение нужно либо на чистом js, либо на vue.js
  • Вопрос задан
  • 142 просмотра
Подписаться 1 Средний 4 комментария
Помогут разобраться в теме Все курсы
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик расширенный
    13 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
ArsenyMatytsyn
@ArsenyMatytsyn Куратор тега CSS
Руководитель frontend направления, предприниматель
Чтобы добавлять\менять классы, используй toggleClass('class')\addClass('class')\removeClass('class').

А чтобы реализовать missclick, обратись к документации про всплытие и перехват событий.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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