您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Press right key to speed up, NoStop
// ==UserScript== // @name Speed up for Youtube // @description Press right key to speed up, NoStop // @version 1.05 // @author Harry // @match https://*.youtube.com/* // @match https://*.zoom.us/* // @match https://*.ixigua.com/* // @match https://*.mgtv.com/* // @match https://v.qq.com/* // @match http://www.zjstv.com/* // @match http://*.cctv.com // @icon https://www.youtube.com/s/desktop/fc7b0168/img/favicon.ico // @connect googlevideo.com // @license MIT // @namespace https://gf.qytechs.cn/users/662979 // ==/UserScript== (function () { 'use strict'; let count = 0 let page_video let speedupKey = 39 let history_rate = 1 const tryPageVideo = () => Array.prototype.find.call(document.getElementsByTagName('video'), e => e.currentTime > 0.1) const getPageVideo = () => { return new Promise(resolve => { const timer = setInterval(() => { const page_video = tryPageVideo() console.log(page_video.playbackRate); if (page_video) { clearInterval(timer) resolve(page_video) } }, 500); }) }; const checkPageVideo = async () => { if (page_video.currentTime <= 0) { page_video = await getPageVideo() if (page_video.currentTime <= 0) { return false } } return true } const relativeEvent = { _stopper: e => e.stopPropagation(), } const downEvent_right = async e => { if (e.keyCode !== speedupKey) return e.stopPropagation() count++ if (count === 2 && await checkPageVideo()) { relativeEvent.shouldPrevent && relativeEvent.prevent() history_rate = page_video.playbackRate page_video.playbackRate = 3 console.log(page_video.playbackRate) console.log('speed up for 3x times') } } const upEvent_right = async e => { if (e.keyCode !== speedupKey) return e.stopPropagation() if (count >= 2 && page_video.playbackRate > 1) { page_video.playbackRate = history_rate console.log('cancel speed up') relativeEvent.shouldPrevent && relativeEvent.allow() }else{ page_video.currentTime += 5 } count = 0 } const init = async () => { page_video = await getPageVideo() document.body.addEventListener('keydown', downEvent_right, true) document.body.parentElement.addEventListener('keyup', upEvent_right, true) } init() Object.defineProperties(document, { 'hidden': {value: false}, 'webkitHidden': {value: false}, 'visibilityState': {value: 'visible'}, 'webkitVisibilityState': {value: 'visible'} }); setInterval(function(){ document.dispatchEvent( new KeyboardEvent( 'keyup', { bubbles: true, cancelable: true, keyCode: 143, which: 143 } ) ); }, 60000); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址