// ==UserScript== // @name 我就是积极分子 // @namespace laoxin.top // @version 1.1beta // @description 西南石油大学入党积极分子网课自动播放 // @author 老新 // @match http://rdjy.swpu.edu.cn/jjfz/lesson/* // @grant none // @require https://cdn.bootcdn.net/ajax/libs/jquery/2.0.0/jquery.js // @downloadURL none // ==/UserScript== (function () { 'use strict'; let settings = { // 1表示开启,0表示关闭 jump: 1, // 自动切换视频任务点,默认开启 video: 1, // 视频暂停自动继续,默认开启 jPClass: 1, // 自动切换下一节,默认开启 back: 1 // 視頻播放完成自動回到章節列表 } let videoList = null; let $$ = top.jQuery; $$(() => { //console.log("视频数量" + $$(".video_lists li")) let play = setInterval(() => { let flag = false; if (settings.video) { flag = videoPlay(videoList); } let backFlag = false; if (flag) { if (settings.jump) { backFlag = NextVideo(videoList); } } if (backFlag) { if (settings.back) { goBack(); } } }, 1000); let videoLists = setInterval(() => { if (getVideoList()) { videoList = getVideoList(); if (settings.jump) { if (jumpToVideo(videoList)) { if (settings.back) { goBack(); } } } } else if (getClassList()) { videoList = getClassList() if (settings.jPClass){ jumpToClass(videoList) } } if (videoList) { clearInterval(videoLists); } }, 500); /** * 视频弹窗关闭 */ function videoPlay(videoList) { if (videoList != null) { if ($$(".public_submit")) { //console.log("视频数量" + $$(".video_lists li")) let text = $$(".public_text").text(); console.log(text) if (text.indexOf("当前视频播放完毕") >= 0) { return true; } else if (text.indexOf("该课程视频你上次观看到") >= 0) { $$(".public_cancel").click(); return false; } else { $$(".public_submit").click(); return false; } } } } /** * 获取视频列表 */ function getVideoList() { if ($$(".video_lists li").length) { console.log("当前视频" + $$(".video_red1").text()) return $$(".video_lists li"); } } /** * 播放下一个视频 * @param videoList * @constructor */ function NextVideo(videoList) { let index = $$(videoList).index($$(".video_red1")); console.log(index) if (videoList[index + 1]) { $$(videoList[index + 1]).children("a").attr('id', 'aRemoveAllTxt'); document.getElementById("aRemoveAllTxt").click(); return false; } else { return true; } } /** * 跳转到未播放的视频 * @param videoList */ function jumpToVideo(videoList) { if ($$(".video_red1").find("a").attr("style") == "width:70%;color:red") { let index = $$(videoList).index($$(".video_red1")); if (videoList[index + 1]) { $$(videoList[index + 1]).children("a").attr('id', 'aRemoveAllTxt'); document.getElementById("aRemoveAllTxt").click(); } else { return true; } } } /** * 返回课程页面 */ function goBack() { $$(".video_goback").attr('id', 'aRemoveAllTxt'); document.getElementById("aRemoveAllTxt").click(); } /** * 获取课程列表 * @returns {*} */ function getClassList() { return $$(".lesson1_a_w dl dd") } /** * 跳转到未观看的视频 * @param videoList */ function jumpToClass(videoList) { let len = $$(".dd_cut_on").length; $$(videoList[len]).children("a").attr('id', 'aRemoveAllTxt'); document.getElementById("aRemoveAllTxt").click(); } }) })();