DarrellStanding
@DarrellStanding
Учусь Front-end разработке

Как заставить менюшки закрываться по клику на любое место страницы?

В шапке есть 3 кнопки по нажатию на которые открываются менюшки. Как сделать чтобы по нажатию на любую область страницы открытая менюха закрылась?
  • Вопрос задан
  • 457 просмотров
Решения вопроса 1
/* Скрываем меню при клике в любой части документа... */
$(document).click(function(){
  $("#yourMenuId").hide();
});

/*... за исключением клика по самому элементу  */
$("#yourMenuId").click(function(e){
  e.stopPropagation();
});
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
kulakoff
@kulakoff
Vue.js developing
Можно добавить window.addEventListener('click', function) и в обработчике проверить куда нажато, если не попали на ваше меню, то закрываем его.
Ответ написан
Комментировать
GreatBOND
@GreatBOND
Начинающий программист
Как вариант(на чистом javascript) просто обрабатывать каждый щелчок, и если он не на нужном вам блоке(менюшке) - закрывать ее:

document.onclick= function(event)
{
  if ( event.target.className != 'menu' ) closeMenu();
}


Это как пример просто.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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