Скрипт, блокирующий автозапуск видео в статьях на DTF (обновлено, v.1.2.1)

Скрипт, блокирующий автозапуск видео в статьях на DTF (обновлено, v.1.2.1)

Принцип работы скрипта крайне прост - обсервер выискивает видео в статье, и переписывает их атрибуты, удаляя автовоспроизведение.
Возможно, расширения браузеров делают это куда лучше, и/или кто-то делал скрипт куда лучше до меня, я без понятия.

Минус лишь один - кнопки управления плеером после подобных манипуляций сия скриптом скрываются.

Патчноут:

  • 1.1 - при переходе по ссылке на другую статью или страницу, обсервер тоже исчезал (чего я не знал, однако). Пофиксено, теперь обсервер добавляется при каждом переходе на новую статью/ссылку. Пока что убрано снижение громкости.
  • 1.2 - добавлены кнопки управления видео в шапке статей.
    Добавлено отключение автовоспроизведения видео в комментариях.
    Как оказалось, по мере скролла страницы, автовоспроизведение видео включается насильно (спасибо, да) - данный скрипт научился блокировать и это.
  • 1.2.1 (ветка "beta" на гитхабе) - добавлены настройки (скриншот ниже). Настроек два вида - "сохраняемые" (в вашем браузере) и "быстрые" (ничего не сохраняет в браузере, а лишь временно меняет настройки на текущей статье).

    Панель "быстрых настроек" имеет лишь часть настроек (управление автозапуском видео в статьях, комментариях, и включение/отключение звука видео по-дефолту).

    "Сохраняемые" настройки (панелька слева на нижнем скриншоте) открываются через кнопку в шапке DTF. Там будут располагаться кнопки всех настроек скриптов (когда я их сделаю, ага).
    Кнопка "Отмена" пока что не работает, настройки в "бете".

    "Сохраняемые" настройки работают на indexedDB, так что должно работать не только на Chrome и Chromium браузерах.
    Настройки "умные" - если их нет, или браузер не поддерживается, или же возникла проблема, из-за которой настройки не прочитались - будет использоваться дефолт.
    Если настройки были найдены, скрипт начнёт свою обычную работу.
Скрипт, блокирующий автозапуск видео в статьях на DTF (обновлено, v.1.2.1)

Ссылки на скрипт:

Статья для проверки работы скрипта:

P.S
В консоли, может быть (нет, будет) ругань на то, что остановка видео идёт сразу после запуска. На работу скрипта это влиять не должно, по идее.

Обсервер используется сугубо из-за того, что кто-то посчитал что совмещение постепенной загрузки видео по мере скролла страницы и автовоспроизведения это отличная мысль. Грубо говоря, нет возможности после загрузки страницы найти сразу все видео в статье и переписать их атрибуты.

P.P.S

Добавьте уже автовоспроизведение видео в настройки профиля, а.

Лень писать статью, да и скрипт пока что тестируется...поэтому запихнул в блог.

Если есть идеи изменения скрипта, замечены баги, и т.п - добро пожаловать в комментарии.

77
2 комментария

Обновлено.

1.2 - добавлены кнопки управления видео в шапке статей.
Добавлено отключение автовоспроизведения видео в комментариях.
Как оказалось, по мере скролла страницы, автовоспроизведение видео включается насильно (спасибо, да) - данный скрипт научился блокировать и это.
По-умолчанию, активно лишь "отключение автовоспроизведения в статьях", блокировка "автовоспроизведения в комментариях" включается вручную через кнопку в шапке статьи.

Метод действия немного расширен - обсервер влияет на прогружаемые (создаваемые на странице) видео, а функция находит сразу все видео на странице, и переписывает их атрибуты.
Благодаря парной работе обсервера и функции, ни одно видео не ускользает от скрипта.

Обновлено.

1.2.1 (ветка "beta" на гитхабе) - добавлены настройки (скриншот ниже). Настроек два вида - "сохраняемые" (в вашем браузере) и "быстрые" (ничего не сохраняет в браузере, а лишь временно меняет настройки на текущей статье).

Панель "быстрых настроек" имеет лишь часть настроек (управление автозапуском видео в статьях, комментариях, и включение/отключение звука видео по-дефолту).

"Сохраняемые" настройки (панелька слева на нижнем скриншоте) открываются через кнопку в шапке DTF. Там будут располагаться кнопки всех настроек скриптов (когда я их сделаю, ага).
Кнопка "Отмена" пока что не работает, настройки в "бете".

"Сохраняемые" настройки работают на indexedDB, так что должно работать не только на Chrome и Chromium браузерах.
Настройки "умные" - если их нет, или браузер не поддерживается, или же возникла проблема, из-за которой настройки не прочитались - будет использоваться дефолт.
Если настройки были найдены, скрипт начнёт свою обычную работу.