✌【学习通 U校园ai 知到 英华 渠海 雨课堂 职教云 清华社 utalk 】【学起 青书 柠檬 睿学 慕享 出头科技 慕华 良师 联大 春风雨】【国开 广开 江开】【源梨】【中嘉鑫盛】【实习打卡】【运动世界校园】【论文辅助ai】【学习强国】等平台各类继续教育通用视频均支持视频加速服务|指定倍速 其他服务请咨询微信客服:wkds857
// ==UserScript==
// @name ✌【学习通 U校园ai 知到 英华 渠海 雨课堂 职教云 清华社 utalk 】【学起 青书 柠檬 睿学 慕享 出头科技 慕华 良师 联大 春风雨】【国开 广开 江开】【源梨】【中嘉鑫盛】【实习打卡】【运动世界校园】【论文辅助ai】【学习强国】等平台各类继续教育通用视频均支持视频加速服务|指定倍速 其他服务请咨询微信客服:wkds857
// @namespace muyan
// @version 1.0.3
// @description 目前支持以下平台详情:【学习通】【智慧树】【U校园】【清华社】【智慧教】【运动世界校园】【论文辅助ai】【学习强国】【fif】【池馆】【雨课堂】【学堂在线】【优学院】【社会公益】【Utalk】【welear】【安全微伴】【重庆高校】【e会学】【川农在线】【阿尔法编程】【小雅】【中国大学mooc】【i学】【speexx】【木玛】【人卫慕课】【高校邦】【智慧职教】【普法网】【北华大学】【在浙学【学习公社】【国家开放大学】【国开实验学院】【学起】【青书学堂】【广开】【云上河开】【讯网】【电中在线】【广西开放大学】【梦想在线】【华莘学堂】【云班课】【东财会计系列】【朝明在线】【麦能网】【融学】【168网校【联大】【柠檬文才】【优课学堂】【安徽继续教育【上海开放大学】【思钮教育】【春风雨】【龙知网】【一路学】【慕华】【新京人】【点墨云】【画课堂】【课程伴侣】【出头科技】【良师在线】【在浙学】【棉花糖】【朝明在线】【国培网】【河南宗教】【睿学】【兰州继教】【文鼎】【168网校】【我学习】【和学在线】【慕享】【含弘慕课】【医博士】【微知库】【奥鹏】【国家智慧中小学】等平台,客服微信:wkds857 使用前请务必打开浏览器开发者模式,按F2后即可执行,使用前一定要看脚本使用说明|脚本可完美运行
// @author xxt
// @run-at document-end
// @match *://*/*
// @grant GM_registerMenuCommand
// @license MIT
// ==/UserScript==
(function() {
'use strict';
const selectors = {
bilibili: 'bwp-video',
douyin: '.xg-video-container video',
other: '傻瓜你看不懂代码,就知道会举报,举报大白脚本得祝你生孩子没屁眼,笑死'
};
function registerMenu() {
try {
GM_registerMenuCommand("减速/加速", () => {
const rate = prompt("请输入您的速率(0-16)", "2.0");
if (isValidRate(rate)) {
setPlaybackRate(rate);
} else {
alert("无效数值");
}
}, "rate");
} catch (error) {
console.error("注册(不可用)菜单命令失败:", error);
}
}
function isValidRate(rate) {
return !isNaN(rate) && rate >= 0 && rate <= 16;
}
function onKeyDown(event) {
if (event.key === 'F2' || event.keyCode === 113) {
event.preventDefault();
promptForRate();
}
}
function promptForRate() {
const rate = prompt("请输入您的速率(0-16)", "2.0");
if (isValidRate(rate)) {
setPlaybackRate(rate);
} else {
alert("无效数值");
}
}
function setPlaybackRate(rate) {
let video = findVideoElement();
if (video) {
video.playbackRate = parseFloat(rate);
} else {
console.error("未找到视频元素");
}
}
function findVideoElement() {
let video = null;
Object.keys(selectors).forEach((key) => {
if (location.host.replace(/\./g, "").includes(key)) {
video = document.querySelector(selectors[key]);
}
});
return video || document.querySelector('video');
}
registerMenu();
document.addEventListener('keydown', onKeyDown);
})();