не отображать при клике на неактивную область
В наличии код
function t(e) { var n = document.querySelector(".js_toggle-menu"), i = document.querySelector(".js_menu-content"), p = document.querySelector(".search__trigger"), s = document.querySelector(".search__form"); if (n && i) { var o = "true" === n.dataset.open; n.onclick = function() { t(!0) }, e && (o ? (n.dataset.open = "false", i.style.visibility = "hidden") : (p.dataset.open = "false", s.classList.remove("open"), n.dataset.open = "true", i.style.visibility = "visible")) } } Гамбургер меню открывает и закрыватся по клику на тригер, подскажите как добавить закрытие всплывашки по клику вне активной области? (не на js_menu_content) Подскажите пожалуйста, как реализовать? |
GostWalk,
document.addEventListener('click', ({target}) => { var n = document.querySelector(".js_toggle-menu"); if(n.dataset.open == "false") return; if(!target.closest('.js_toggle-menu, .js_menu-content, .search__trigger, .search__form')){ n.click() } }); |
Цитата:
спасибо, работает |
Часовой пояс GMT +3, время: 20:23. |