您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
第一次写的脚本,主要是考研看视频舒服一点,设置了一个可以自定义倍速的脚本,后面会逐渐完善和增加功能,欢迎反馈
当前为
// ==UserScript== // @name 百度网盘自定义倍速播放 // @namespace http://tampermonkey.net/ // @version 3.1 // @description 第一次写的脚本,主要是考研看视频舒服一点,设置了一个可以自定义倍速的脚本,后面会逐渐完善和增加功能,欢迎反馈 // @author 枫影 // @match *://pan.baidu.com/play/video // @grant none // ==/UserScript== (function() { 'use strict'; //生成倍速下拉菜单 function createSelect(id){ var s=document.createElement("SELECT"); s.setAttribute("id",id); s.setAttribute("lay-verify","required"); var p0=document.createElement("OPTION"); var p1=document.createElement("OPTION"); var p2=document.createElement("OPTION"); var p3=document.createElement("OPTION"); var p4=document.createElement("OPTION"); var p5=document.createElement("OPTION"); p0.setAttribute("id","p0"); p1.setAttribute("id","p1"); p2.setAttribute("id","p2"); p3.setAttribute("id","p3"); p4.setAttribute("id","p4"); p5.setAttribute("id","p5"); p0.setAttribute("value","1"); p1.setAttribute("value","0.5"); p2.setAttribute("value","1.0"); p3.setAttribute("value","1.5"); p4.setAttribute("value","2"); p5.setAttribute("value","5"); p0.innerHTML="快捷倍速"; p1.innerHTML="0.5"; p2.innerHTML="1.0"; p3.innerHTML="1.5"; p4.innerHTML="2"; p5.innerHTML="5"; s.add(p0); s.add(p1); s.add(p2); s.add(p3); s.add(p4); s.add(p5); return s; } function createInput(inid,onid,selectid){ window.onload=function(){ layui.use('layer', function(){ var layer = layui.layer; layer.msg('倍速脚本加载完成!欢迎使用'); }); } //生成元素 let cr=document.createElement("BUTTON"); cr.setAttribute("class","layui-btn layui-btn-normal layui-btn-lg"); cr.setAttribute("id","create"); let sm=document.createElement("i"); sm.setAttribute("class","layui-icon layui-icon-face-smile-b"); sm.setAttribute("style","font-size: 30px; color: #ffffff;"); cr.setAttribute("alt","隐藏倍速工具箱"); cr.appendChild(sm); let f=document.createElement("fieldset"); f.setAttribute("class","layui-elem-field"); f.setAttribute("id","box"); let le=document.createElement("legend"); le.innerHTML="视频倍速工具箱"; f.appendChild(le); var d=document.createElement("FORM"); d.style.width="420px"; d.style.height="65px"; d.setAttribute("id","inform"); d.setAttribute("class","layui-form"); var init=document.createElement("INPUT"); init.setAttribute("type","text"); init.setAttribute("placeholder","请输入你想倍速的倍数"); init.setAttribute("id",inid); init.setAttribute("class","layui-input"); var on=document.createElement("BUTTON"); var res=document.createElement("BUTTON"); on.innerHTML="确认"; on.setAttribute("id",onid); on.setAttribute("class","layui-btn layui-btn-sm"); res.setAttribute("type","reset"); res.innerHTML="清空"; res.setAttribute("class","layui-btn layui-btn-normal layui-btn-sm"); var se=createSelect(selectid); //引入layui框架 let js=document.createElement("script"); js.setAttribute("type","text/javascript"); js.setAttribute("src","https://www.layuicdn.com/layui-v2.5.6/layui.js"); let css=document.createElement("link"); css.setAttribute("type","text/css"); css.setAttribute("href","https://www.layuicdn.com/layui-v2.5.6/css/layui.css"); css.setAttribute("rel","stylesheet"); let head=document.getElementsByTagName("head")[0]; head.appendChild(js); head.appendChild(css); //设置位置 f.style.position="absolute"; f.style.left="0px"; f.style.top="50%"; init.style.position="absolute"; init.style.width="160px"; on.style.position="absolute"; res.style.position="absolute"; init.style.zIndex=999; on.style.zIndex=999; res.style.zIndex=999; init.style.top="30%"; init.style.left="0px"; on.style.left="40%"; on.style.top="34%"; res.style.left="51%"; res.style.top="34%"; se.style.position="absolute"; se.style.top="63%"; se.style.left="1px"; se.style.zIndex=999; cr.style.position="absolute"; cr.style.left="0px"; cr.style.top="42%"; //设置样式 f.style.width="400px"; f.style.height="125px"; //生成到界面上 document.body.appendChild(cr); d.appendChild(init); d.appendChild(on); d.appendChild(res); f.appendChild(d); f.appendChild(se); controlBox(f,false); document.body.appendChild(f); } //显示当前倍速 function outNow(fast){ layui.use('layer', function(){ var layer = layui.layer; layer.msg("当前倍速:"+fast); }); } //控制工具箱的显示 var flag=0; function createBox(){ let on=document.getElementById("create"); let f=document.getElementById("box"); on.onclick=function(){ //0表示此时是隐藏状态 if(flag==0){ layui.use('layer', function(){ var layer = layui.layer; layer.msg("显示倍速工具箱"); }); let sm1=document.createElement("i"); sm1.setAttribute("class","layui-icon layui-icon-face-cry"); sm1.setAttribute("style","font-size: 30px; color: #ffffff;"); on.setAttribute("alt","隐藏倍速工具箱"); on.removeChild(on.firstChild); on.appendChild(sm1); controlBox(f,true); flag=1; } else{ layui.use('layer', function(){ var layer = layui.layer; layer.msg("隐藏倍速工具箱"); }); let sm2=document.createElement("i"); sm2.setAttribute("class","layui-icon layui-icon-face-smile-b"); sm2.setAttribute("style","font-size: 30px; color: #ffffff;"); on.setAttribute("alt","显示倍速工具箱"); on.removeChild(on.firstChild); on.appendChild(sm2); controlBox(f,false); flag=0; } } } //动画显示隐藏指定id的fileld function controlBox(fieldset,flag){ //true为渐显 if(flag==true){ fieldset.setAttribute("class","layui-elem-field layui-anim layui-anim-fadein"); } //false为渐隐 else{ fieldset.setAttribute("class","layui-elem-field layui-anim layui-anim-fadeout"); } } //视频工具箱操作实现 function control(selectid){ let select=document.getElementById(selectid); select.onchange=function(){ setFast(selectid,0.0); } } //设置倍速 function setFast(id,num){ var fast; if(num==0.0){ fast=document.getElementById(id).value; } else{ fast=num; } if(fast==0){ fast=1; alert('你输入的倍数非法,已为你自动调整到原倍速!'); } console.log("执行倍速:"+fast); videojs.getPlayers("video-player").html5player.tech_.setPlaybackRate(fast); outNow(fast); } function getInputFastAndSet(inid,btnid){ var on=document.getElementById(btnid); on.onclick=function(){ setFast(inid,0.0); } } createInput("in","btn","select"); getInputFastAndSet("in","btn"); control("select"); createBox(); })();