Greasy Fork

Greasy Fork is available in English.

TOD🚀全平台网课助手【学习通 U校园ai 知到 英华 仓辉 雨课堂 职教云】【学起 青书 柠檬 睿学 慕享 出头科技 慕华】【国开 广开 上海开放大学】等平台 客服微信:WKWK796 自动刷课

🐯全网免费仅做一款脚本🐯】、【🚀已完美兼容、智慧树、中国大学mooc、慕课、雨课堂、新国开、超星、学习通、知到、国家开放大学、蓝墨云、职教云、智慧职教、云班课精品课、山东专技、西财在线剩余网站仅支持部分功能🚀】【半兼容、绎通云、U校园、学堂在线】、【😎完美应付测试,全自动答题,一键完成所有资源学习(视频挨个刷时长不存在滴)、视频倍速😎】、

当前为 2025-10-04 提交的版本,查看 最新版本

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         TOD🚀全平台网课助手【学习通 U校园ai 知到 英华 仓辉 雨课堂 职教云】【学起 青书 柠檬 睿学 慕享 出头科技 慕华】【国开 广开 上海开放大学】等平台 客服微信:WKWK796  自动刷课
// @namespace    https://github.com/wkwk796
// @version      2.5.5
// @description  🐯全网免费仅做一款脚本🐯】、【🚀已完美兼容、智慧树、中国大学mooc、慕课、雨课堂、新国开、超星、学习通、知到、国家开放大学、蓝墨云、职教云、智慧职教、云班课精品课、山东专技、西财在线剩余网站仅支持部分功能🚀】【半兼容、绎通云、U校园、学堂在线】、【😎完美应付测试,全自动答题,一键完成所有资源学习(视频挨个刷时长不存在滴)、视频倍速😎】、
// @author       Wkwk796
// @match        *://*.chaoxing.com/*
// @match        *://*.zhihuishu.com/*
// @match        *://*.chaoxing.com/*
// @match        *://mooc1.chaoxing.com/nodedetailcontroller/*
// @match        *://*.chaoxing.com/mooc-ans/work/doHomeWorkNew*
// @match        *://*.chaoxing.com/work/doHomeWorkNew*
// @match        *://*.edu.cn/work/doHomeWorkNew*
// @match        *://*.asklib.com/*
// @match        *://*.chaoxing.com/*
// @match        *://*.hlju.edu.cn/*
// @match        *://lms.ouchn.cn/*
// @match        *://xczxzdbf.moodle.qwbx.ouchn.cn/*
// @match        *://tongyi.aliyun.com/qianwen/*
// @match        *://chatglm.cn/*
// @match        *://*.zhihuishu.com/*
// @match        *://course.ougd.cn/*
// @match        *://moodle.syxy.ouchn.cn/*
// @match        *://moodle.qwbx.ouchn.cn/*
// @match        *://elearning.bjou.edu.cn/*
// @match        *://whkpc.hnqtyq.cn:5678/*
// @match        *://study.ouchn.cn/*
// @match        *://www.51xinwei.com/*
// @match        *://*.w-ling.cn/*
// @match        *://xuexi.jsou.cn/*
// @match        *://*.edu-edu.com/*
// @match        *://xuexi.jsou.cn/*
// @match        *://spoc-exam.icve.com.cn/*
// @match        *://*.icve.com.cn/*
// @match        *://zice.cnzx.info/*
// @grant        unsafeWindow
// @grant        GM_xmlhttpRequest
// @grant        GM_setValue
// @grant        GM_getValue
// @grant        GM_info
// @grant        GM_addStyle
// @grant        unsafeWindow
// @grant        none
// @license      MIT
// @icon         https://static.zhihuishu.com/static/img/favicon.ico
// ==/UserScript==

(function() {
    'use strict';

    // 创建控制面板
    function createControlPanel() {
        const panel = document.createElement('div');
        panel.style.cssText = `
            position: fixed;
            bottom: 20px;
            right: 20px;
            background: rgba(0,0,0,0.7);
            color: white;
            padding: 10px 15px;
            border-radius: 5px;
            z-index: 99999;
            font-family: Arial, sans-serif;
            font-size: 14px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.3);
        `;
        
        // 添加标题
        const title = document.createElement('div');
        title.style.fontWeight = 'bold';
        title.style.marginBottom = '5px';
        title.textContent = '学习通助手';
        panel.appendChild(title);
        
        // 添加状态信息
        const status = document.createElement('div');
        status.id = 'autoPlayStatus';
        status.textContent = '等待视频加载...';
        status.style.marginBottom = '5px';
        panel.appendChild(status);
        
        // 添加联系方式
        const contact = document.createElement('div');
        contact.style.fontSize = '12px';
        contact.style.color = '#ccc';
        contact.textContent = '联系方式: wkwk796';
        panel.appendChild(contact);
        
        document.body.appendChild(panel);
    }

    // 更新状态信息
    function updateStatus(text) {
        const statusEl = document.getElementById('autoPlayStatus');
        if (statusEl) {
            statusEl.textContent = text;
        }
    }

    // 处理视频自动播放和静音
    function handleVideo() {
        // 查找视频元素
        const videoElements = document.getElementsByTagName('video');
        if (videoElements.length > 0) {
            const video = videoElements[0];
            
            // 静音
            if (!video.muted) {
                video.muted = true;
                updateStatus('已静音');
            }
            
            // 自动播放
            if (video.paused) {
                video.play().then(() => {
                    updateStatus('已自动播放');
                }).catch(err => {
                    updateStatus('播放请求被阻止,尝试解决...');
                    // 有些情况下需要用户交互才能播放,尝试模拟点击
                    setTimeout(() => {
                        video.click();
                        setTimeout(() => {
                            if (!video.paused) {
                                updateStatus('已通过交互播放');
                            } else {
                                updateStatus('需要手动点击播放');
                            }
                        }, 1000);
                    }, 1000);
                });
            } else {
                updateStatus('视频正在播放');
            }
            
            // 监听视频结束事件,尝试播放下一个
            video.addEventListener('ended', () => {
                updateStatus('视频已结束,尝试下一个...');
                // 尝试点击下一节按钮
                const nextButtons = document.querySelectorAll('button:not([disabled]) span:contains("下一节")');
                if (nextButtons.length > 0) {
                    nextButtons[0].parentElement.click();
                    setTimeout(handleVideo, 3000); // 3秒后再次检查视频
                }
            });
        }
    }

    // 周期性检查视频
    function startMonitoring() {
        createControlPanel();
        // 立即检查一次
        handleVideo();
        // 每5秒检查一次
        setInterval(handleVideo, 5000);
    }

    // 页面加载完成后启动
    window.addEventListener('load', startMonitoring);

})();