menu-mobile_active
menu-mobile_active
и всплывает alert с текстом, "мобильное меню скрыто".// Скрытие меню при клике на область помимо самого меню
$(document).mouseup(function(e) { // событие клика по веб-документ
....
});
запускался только при открытом меню, т.е. только тогда, когда у мобильного меню есть класс menu-mobile_active
<div class="class1 class2">some elem</div>
<button class="btn">toggle</button>
window.onload = e => {
// получаем элементы
const $div = document.querySelector('.class1')
const $btn = document.querySelector('.btn')
// функция, переключающая класс ( нужна для демонстрации )
const toggle = e => $div.classList.toggle('class2')
// функция, которая будет выполняться при изменении атрибутов у $div
const obsCallback = ( ml, ob ) => {
// за место вывода в консоль после проверки на существование класса подставляем нужные функции
ml[0].target.classList.contains('class2') ? console.log(true) : console.log(false)
}
// создание обсервера и передача нашей функции
const observer = new MutationObserver(obsCallback)
// опции (за чем будем следить)
const observerOptions = {
childList: false,
attributes: true,
subtree: false
}
// начинаем наблюдать
observer.observe($div, observerOptions)
// просто повесил событие на кнопку чтобы менять класс у $div
$btn.addEventListener('click', toggle)
}