Remembers playback speed.
当前为
// ==UserScript==
// @name YouTube speed rememberer
// @version 0.2.1
// @description Remembers playback speed.
// @author gvvad
// @match *.youtube.com/watch*
// @run-at document-end
// @namespace https://greasyfork.org/users/100160
// ==/UserScript==
(function() {
'use strict';
var mp = document.querySelector("#movie_player");
if (!mp) return;
var setLabel = function(_msg) {
var label = document.querySelector("#_ytp-label");
if (_msg === undefined) {
if (label) label.parentElement.removeChild(label);
return;
}
if (label) {
label.innerText = _msg;
return;
}
var cls = document.querySelector("#movie_player").querySelector(".ytp-right-controls");
var span = document.createElement('span');
span.setAttribute('id','_ytp-label');
span.setAttribute('class','ytp-button');
span.onclick = function() {
mp.setPlaybackRate(1);
};
span.innerText = _msg;
cls.insertBefore(span, cls.firstChild);
};
var setSpeedLabel = function(_rate) {
if (_rate == 1) {
setLabel();
} else {
setLabel('x' + _rate);
}
};
var rate = 1.0;
rate = parseFloat(localStorage.getItem("pl-rate"));
rate = (isNaN(rate))? 1.0 : rate;
if (rate != 1.0) {
mp.setPlaybackRate(rate);
setSpeedLabel(mp.getPlaybackRate());
}
mp.addEventListener("onPlaybackRateChange", function(){
localStorage.setItem("pl-rate", mp.getPlaybackRate());
setSpeedLabel(mp.getPlaybackRate());
});
})();