随手写了一个,每次步进0.25倍速,不会有提示也不会有意外处理,就算你把速度调到负的或者不支持的几十倍它也不会告诉你错误,想改哪里就那么几个字随便看看自己改就是了
// ==UserScript==
// @name 懒人听书Web调速
// @namespace indefined
// @version 0.1
// @description 自定义调速,Z键:原速;X键:减速;C键:加速;
// @author indefined
// @include http://www.lrts.me/playlist
// @include https://www.lrts.me/playlist
// @grant none
// ==/UserScript==
(function() {
'use strict';
document.addEventListener('keydown',e=>{
if (e.key=='z') {
const audio = document.querySelector('audio');
if(audio) audio.playbackRate = 1;
}
else if (e.key=='x') {
const audio = document.querySelector('audio');
if(audio) audio.playbackRate -= 0.25;
}
else if (e.key=='c') {
const audio = document.querySelector('audio');
if(audio) audio.playbackRate += 0.25;
}
});
})();
@indefined 谢谢。有没有办法实现下一集的时候也保持倍速播放…… 主要就是想要可以连续的倍速播放。
连续倍速只能在网页没关闭自动换集的情况下有效,下次打开网页或者手动换集仍然需要手动调一次,网页没关闭也不知道会不会有意外情况导致失效,懒得折腾太多能用就用吧
// ==UserScript==
// @name 懒人听书Web调速
// @namespace indefined
// @version 0.1.1
// @description 自定义调速,Z键:原速;X键:减速;C键:加速;
// @author indefined
// @include http://www.lrts.me/playlist
// @include https://www.lrts.me/playlist
// @grant none
// ==/UserScript==
(function() {
'use strict';
let nowRate = 1;
function setRate(rate) {
if (isNaN(rate)) rate = nowRate;
const audio = document.querySelector('audio');
if(audio) {
audio.playbackRate = nowRate = rate;
audio.onended = ()=>setTimeout(setRate,10);
}
}
document.addEventListener('keydown',e=>{
if (e.key=='z') {
setRate(1);
}
else if (e.key=='x') {
setRate(nowRate-0.25);
}
else if (e.key=='c') {
setRate(nowRate+0.25);
}
});
})();
那位大佬可以帮忙给 懒人听书 弄个倍速播放不。
懒人听书Web 太不给力了,大家都有倍速播放了,可是就是不加……