Greasy Fork is available in English.
使用快捷键控制bilibili的倍速选择
当前为
// ==UserScript==
// @name bilibili 倍速控制
// @namespace http://tampermonkey.net/
// @version 0.1
// @description 使用快捷键控制bilibili的倍速选择
// @author pipizhu
// @match http*://www.bilibili.com/video/*
// @icon https://www.google.com/s2/favicons?sz=64&domain=bilibili.com
// @grant none
// @license MIT
// ==/UserScript==
;(function () {
'use strict'
init()
})()
async function init() {
try {
await delay(1000)
const result = await initKeyElems()
console.log('result', result)
} catch (e) {
console.log('error', e)
}
}
async function test() {
return new Promise((res, rej) => {
setTimeout(() => {
res
}, 200)
})
}
async function initKeyElems() {
let observed = false
let count = 0
async function getKeys() {
return new Promise(async (resolve, reject) => {
// await delay(1000)
const ctrlKeylist = Array.from(
document.querySelectorAll('.bpx-player-ctrl-playbackrate-menu li')
)
if (ctrlKeylist.length === 0) {
if (count <= 20) {
count += 1
await delay(1000)
return getKeys()
} else {
reject('get ctrl keys error ')
}
} else {
resolve(ctrlKeylist)
}
})
}
const keys = await getKeys()
return keys
}
async function delay(time) {
return new Promise(res => setTimeout(() => res(), time))
}