← Все примеры

JavaScript Реклама и мусор

Авто-закрытие модальных оверлеев

Следит за страницей и скрывает крупные фиксированные оверлеи, возвращая прокрутку.

Код для копирования

(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 });
})();

Как использовать этот пример

  1. Скопируй код кнопкой выше.
  2. Установи JustZix (2 минуты) и открой расширение на нужной странице.
  3. Добавь новое правило, совпадающее с этой страницей.
  4. Вставь код в панель JavaScript правила и сохрани — он запускается при каждом заходе на страницу.

Оцени этот пример

Оценок пока нет — оцени первым.

Этот пример работает?

Сниппеты бесполезны, если их некуда вставить.

JustZix устанавливается за 2 минуты и запускает твой код на каждой подходящей странице. Без аккаунта, без оплаты.

Скачать бесплатно Смотреть применение