valgerofficial
@valgerofficial

Закрытие меню по клику на пустое место?

Привет всем друзья, делаю обычное боковое меню.. но вот знаний скажем.. 10% Подскажите как заставить закрываться меню когда пользователь кликает по пустому месту на странице?
  • Вопрос задан
  • 803 просмотра
Пригласить эксперта
Ответы на вопрос 3
Eridani
@Eridani
Мимо проходил
Решение писать не буду кодом, но дам логику:
Что есть пустое место? Это любое другое место, отличное от нашего блока...Поэтому клик должен быть в место, которое не равно нашему блоку, в противном случае ничего не делать.
Вуаля!
Ответ написан
Комментировать
villiwalla
@villiwalla
HTML-верстка
Всплытие событий смотри
Ответ написан
Комментировать
sh13max
@sh13max
Хочу научиться качественно программировать☺
Создай меню внутри прозрачного элемента размером во весь экран и напиши следующий js-код
html:
<div style="width:100vw; height:100vh;" class="menu" id="прозрачный_элемент">
    <div id="меню"></div>
</div>
<!--Лучше не использовать русский язык в идентификаторах(да и вообще в любом коде), но я написал для наглядности \_(-_-)_/ -->


js:
кнопка_меню.addEventListenner("click",()=>{
    прозрачный_элемент.style.display = "block"; 
})

прозрачный_элемент.addEventListenner("click",(e)=>{
    if(e.target == прозрачный_элемент){
        прозрачный_элемент.style.display = "none";
    }
})


С этим способом transition не работает, но этот недочет можно обойти с помощью setTimeout
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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