Авто-закрытие модальных оверлеев
Следит за страницей и скрывает крупные фиксированные оверлеи, возвращая прокрутку.
Код для копирования
(function () {
function killOverlays() {
document.querySelectorAll('div, section, aside').forEach(function (el) {
var s = getComputedStyle(el);
var z = parseInt(s.zIndex || '0', 10);
if ((s.position === 'fixed' || s.position === 'absolute') && z >= 1000) {
var r = el.getBoundingClientRect();
if (r.width > window.innerWidth * 0.6 && r.height > window.innerHeight * 0.6) {
el.style.display = 'none';
}
}
});
if (document.body) {
document.body.style.overflow = 'auto';
document.body.classList.remove('modal-open', 'no-scroll', 'noscroll');
}
}
killOverlays();
var obs = new MutationObserver(killOverlays);
obs.observe(document.body, { childList: true, subtree: true });
})();
Как использовать этот пример
- Скопируй код кнопкой выше.
- Установи JustZix (2 минуты) и открой расширение на нужной странице.
- Добавь новое правило, совпадающее с этой страницей.
- Вставь код в панель JavaScript правила и сохрани — он запускается при каждом заходе на страницу.
Оцени этот пример
Оценок пока нет — оцени первым.