YouTube speed rememberer

Remembers playback speed.

目前为 2017-03-20 提交的版本。查看 最新版本

// ==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://gf.qytechs.cn/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());
    });
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址