// ==UserScript== // @name 云班课视频助手 // @version 0.1 // @description 云班课助手,数字1,2,3,4,5代表1x,2x,4x,8x,16x倍速,数字0一键看完视频,<减速,>加速 // @author 正阳哥哥 // @match *://*.mosoteach.cn/* // @grant none // @namespace https://greasyfork.org/users/515076 // @downloadURL none // ==/UserScript== (function() { 'use strict'; let title = '' let rate = 1 let fl="\u6b63\u9633\u54e5\u54e5\u51fa\u54c1\uff0c\u5fc5\u5c5e\u7cbe\u54c1\uff01" window.addEventListener('keyup', (e) => { if (e.key === '>' && rate < 16) { rate += 1 setVideoRate() } else if (e.key === '<' && rate > 1) { rate -= 1 setVideoRate() } else if (e.key === '1') { rate = 1 setVideoRate() } else if (e.key === '2') { rate = 2 setVideoRate() } else if (e.key === '3') { rate = 4 setVideoRate() } else if (e.key === '4') { rate = 8 setVideoRate() } else if (e.key === '5') { rate = 16 setVideoRate() } else if (e.key === '0') { finishVideo() } else { return } }) function encodeUTF8(str){ var temp = "",rs = ""; for( var i=0 , len = str.length; i < len; i++ ){ temp = str.charCodeAt(i).toString(16); rs += "\\u"+ new Array(5-temp.length).join("0") + temp; } return rs; } function decodeUTF8(str){ return str.replace(/(\\u)(\w{4}|\w{2})/gi, function($0,$1,$2){ return String.fromCharCode(parseInt($2,16)); }); } function setVideoRate() { let tis="\u5f53\u524d\u500d\u901f\uff1a" let al=decodeUTF8(tis)+rate.toString()+"x" let cal=decodeUTF8(tis)+rate.toString()+"x\n\n"+fl console.log(al) //console.log(encodeUTF8("观看完毕!")) document.querySelector('video').playbackRate = rate window.alert(cal) } function finishVideo() { let t=document.querySelector('video').duration let wan="\u89c2\u770b\u5b8c\u6bd5\uff01" let ti=decodeUTF8(wan)+"\n\n"+fl console.log(decodeUTF8(wan)) document.querySelector('video').currentTime=t window.alert(ti) } })();