← Все примеры

JavaScript Медиа substack.com

Substack: останавливать встроенные видео

Останавливает HTML5-видео и отключает автоплей у встроенных YouTube/Vimeo, чтобы они не запускались сами.

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

// Auto-pause embedded video previews so they do not autoplay inside posts
(function () {
  function pause() {
    document.querySelectorAll('video').forEach(function (v) {
      if (v.dataset.jzPaused) { return; }
      v.dataset.jzPaused = '1';
      try { v.autoplay = false; v.removeAttribute('autoplay'); v.pause(); } catch (e) {}
    });
    document.querySelectorAll('iframe[src*="youtube.com/embed"], iframe[src*="player.vimeo.com"]').forEach(function (f) {
      if (f.dataset.jzPaused) { return; }
      var src = f.getAttribute('src') || '';
      if (/(\?|&)autoplay=1/i.test(src)) {
        f.setAttribute('src', src.replace(/(\?|&)autoplay=1/i, function (m) { return m.charAt(0) + 'autoplay=0'; }));
      }
      f.dataset.jzPaused = '1';
    });
  }
  pause();
  var obs = new MutationObserver(function () {
    clearTimeout(window.__jzSubPause);
    window.__jzSubPause = setTimeout(pause, 300);
  });
  obs.observe(document.body, { childList: true, subtree: true });
})();

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

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

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

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

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

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

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

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