Иногда хочется повторить проигрывание видео Youtube несколько раз. Однако, кнопки такой у него нет. Этот простой скрипт реализует такой функционал.
// ==UserScript==
// @name Repeat on Youtube
// @namespace http://tampermonkey.net/
// @version 0.2
// @description Repeat on Youtube
// @author VVSite
// @match https://www.youtube.com/*
// @icon https://www.google.com/s2/favicons?domain=youtube.com
// @grant none
// ==/UserScript==
(function() {
'use strict';
top.rep = false;
let b_div = document.createElement('div');
b_div.style.position = 'relative';
let b_style = 'font-size: 30px; display: block; position: absolute; left: -55px; cursor: pointer; font-weight: bold; top: -8px; padding: 0 10px;border: 1px solid #cacaca; border-radius: 50%; padding-bottom: 5px;';
let tmp = '<span id="vvs-rep" style="' + b_style + '">↻</span>';
b_div.innerHTML = tmp;
let sp = null;
let video_player = document.querySelectorAll('#movie_player')[0];
if (video_player)
{
let t_obr = setInterval( function(){
let url = location.href;
if (/watch\?v\=/.test(url))
{
//let zag = document.querySelectorAll('.ytd-video-primary-info-renderer')[0];
let zag = document.querySelectorAll('.style-scope.ytd-watch-metadata')[0];
zag.before(b_div);
sp = b_div.querySelector('#vvs-rep');
if(sp)
{
sp.onmouseover = function(e)
{
this.setAttribute('style', 'background: orange; ' + b_style);
}
sp.onmouseout = function(e)
{
this.setAttribute('style', 'background: #fff;' + b_style);
}
sp.onclick = function(e)
{
if (!top.rep)
{
b_style += 'color: red; background: #eaeaea;';
this.setAttribute('style', b_style);
top.rep = true;
}
else
{
b_style = b_style.substr(0, b_style.length - 32);
this.setAttribute('style', b_style);
top.rep = false;
}
}
if (video_player.getCurrentTime() == video_player.getDuration() && top.rep)
{
video_player.playVideo();
}
}
}
}, 1500);
}
else
{
//clearInterval(t_obr);
}
})();
Протестировано в Firefox 96.0.2. Для использования скрипта:
1. Установите плагин Tampermonkey для Firefox.
2. Скопируйте содержимое кода скрипта вверху.
3. Щелкните на кнопке плагина, чтобы вызвать меню и выберите «Создать новый скрипт».
4. Удалите весь текст, который Tampermonkey автоматически добавляет в новый скрипт и вставьте из буфера скопированный в п.2 код.
5. Сохраните скрипт по «Файл — Сохранить».
6. Откройте любой ролик Youtube, вы должны увидеть появившуюся кнопку повтора слева от заголовка видео. Если ее нажать, она станет красной и после окончания воспроизведения ролик автоматически запустится вновь.
7. Повторное нажатие прекратит автоматическое воспроизведение.

