Greasy Fork

Greasy Fork is available in English.

B站倍播快捷键_好用!

在哔哩哔哩网站上播放视频时,按下x键减速播放,按下c键加速播放,按下z原速播放或上一次速度播放。每次步进为0.2。此外按下回车键全屏播放或退出全屏。带记忆功能。按键记忆:z、x、c这三个键在键盘上依次排列,即原速、减速、加速。这样就好记多了。此外按下f全屏播放。例如:按下x键2次,当前播放速度为0.6,紧接着再按下z键,这时候回到1倍速,再按下z键,这时再回到0.6倍速。

目前为 2023-03-17 提交的版本。查看 最新版本

// ==UserScript==
// @name         B站倍播快捷键_好用!
// @version      8.9.11
// @description  在哔哩哔哩网站上播放视频时,按下x键减速播放,按下c键加速播放,按下z原速播放或上一次速度播放。每次步进为0.2。此外按下回车键全屏播放或退出全屏。带记忆功能。按键记忆:z、x、c这三个键在键盘上依次排列,即原速、减速、加速。这样就好记多了。此外按下f全屏播放。例如:按下x键2次,当前播放速度为0.6,紧接着再按下z键,这时候回到1倍速,再按下z键,这时再回到0.6倍速。
// @author       Alan996
// @icon         https://i1.hdslb.com/bfs/face/a809a3b8407840ae00032360108261fcf503d38a.jpg@96w_96h_1c_1s.webp
// @match        https://www.bilibili.com/*
// @grant        GM_setValue
// @grant        GM_getValue
// @license      GPL
// @namespace http://greasyfork.icu/en/scripts/439781
// ==/UserScript==

(function() {
    'use strict';
    console.log("B站倍播快捷键 启动成功!");
    var d = document.querySelector('video') ? document.querySelector('video') : document.querySelector("bwp-video");
    var a = GM_getValue('a', 10);
    var b = GM_getValue('b', 10);
    d.playbackRate = a/10;
    document.addEventListener('keydown', function(event) {
        if(event.code === 'KeyX' || event.code === 'KeyC' || event.code === 'KeyZ'){
            var c = false;
            if (event.code === 'KeyX') {
                a -= 2;
            } else if (event.code === 'KeyC') {
                a += 2;
            } else if (event.code === 'KeyZ') {
                c = true;
                a = d.playbackRate === 1 ? b : 10;
            }
            if (a < 2) {
                a = 2;
            } else if (a > 80) {
                a = 80;
            }
            GM_setValue('a', a);
            d.playbackRate = a/10;
            if(!c){
                b = a;
                GM_setValue('b', b);
            }
        }
        if (event.code === 'Enter') {
            if (d && d.readyState >= 2) {
                if (document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement) {
                    if (document.exitFullscreen) {
                        document.exitFullscreen();
                    } else if (document.mozCancelFullScreen) {
                        document.mozCancelFullScreen();
                    } else if (document.webkitExitFullscreen) {
                        document.webkitExitFullscreen();
                    }
                }
                else {
                    if (d.requestFullscreen) {
                        d.requestFullscreen();
                    } else if (d.mozRequestFullScreen) {
                        d.mozRequestFullScreen();
                    } else if (d.webkitRequestFullscreen) {
                        d.webkitRequestFullscreen();
                    }
                }
            }
        }
    });
    setInterval(function (){
        var e = document.getElementsByClassName('bpx-player-ctrl-playbackrate-result')[0].textContent.replace('x','');
        if (parseFloat(e)) {
            a = parseFloat(e)*10;
            GM_setValue('a', a);
        }}, 2000);
})();