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

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

У меня есть несколько ссылок при нажатии на которые появляется дропдаун.
Классы у всех ссылок и дропдаунов одинаковые.
Мне нужно что бы при клике на блок, добавлялся класс к блоку на КОТОРЫЙ КЛИКАЮ
Структура кода такая:
<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 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
ArsenyMatytsyn
@ArsenyMatytsyn Куратор тега CSS
Руководитель frontend направления, предприниматель
Чтобы добавлять\менять классы, используй toggleClass('class')\addClass('class')\removeClass('class').

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

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

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