Greasy Fork is available in English.

顺德教师在线研修系统学习助手

2020年顺德区2020年中小学(幼儿园)教师专业科目网络培训

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください。
// ==UserScript==
// @name         顺德教师在线研修系统学习助手
// @namespace    http://tampermonkey.net/
// @version      0.12
// @description  2020年顺德区2020年中小学(幼儿园)教师专业科目网络培训 
// @author        longlong
// @match        http://zy.jsyx.sdedu.net/*
// @grant        none
// ==/UserScript==

(function() {
var option = document.createElement("div");
option.style="background-size: 100%; width: 90px; height: 90px; border-radius: 45px;position:fixed;left:60px;top:200px; z-index:999;"
//添加点击事件
//option.setAttribute("onClick","StartOrStop()");
//option.setAttribute("onclick",function(){StartOrStop()});
option.setAttribute("id","rains");
option.innerText = "开关";
document.body.insertBefore(option, document.body.firstElementChild);
var timer;
var flag=0;
var flag1=0;
var nexttime=0;
var chongfutime=0;
var startstatus = 0;
var next_elapsed_time="00:00";
//次数
var number = 0;
var playtime=2000;
//获取当前活动
//var NowAction=NowFun
//setInterval(start, 3000);	//每5秒钟执行一次
document.getElementById("rains").addEventListener("click", StartOrStop);
StartOrStop()
function StartOrStop(){
    //获取播放状态
	var play  = document.getElementsByClassName("fp-play")[0];
    if (startstatus == 0){
        //开始脚本
        timer = setInterval(start, 3000);
        //点击开始按钮
        play.click();
        startstatus = 1;
        var rains = document.getElementById("rains");
        rains.innerText = "已开";
        rains.style.color = "white";
		flag1=1
    }else if (startstatus == 1) {
        //停止脚本
        clearInterval(timer);
        //已经播放 暂停播放
        play.click();
        startstatus = 0;
        var rains = document.getElementById("rains");
        rains.innerText = "已关";
        rains.style.color = "red";
		flag1=0
    }
}
function start(){
    if(number % 200 == 0){
          console.clear();
    }
    number += 1;
	//首先判断是否播放状态,暂停则点播放
	if(playorpause()=="pause"){
		document.getElementsByClassName("fp-play")[0].click();
	}
	//如果没有已看分钟数,说明不是视频页,直接点击下一节
	if (document.getElementsByClassName("fp-elapsed")[0]!=null){
		next_elapsed_time = document.getElementsByClassName("fp-elapsed")[0].innerText;	//有分钟数,则得到已看分钟数
	}else{
	document.getElementsByClassName("btn next crt")[0].click();	//点击下一节
	nexttime=nexttime+1;	//计个数,没什么用
	console.log(flag1+"ddd");
	}
	//获取播放进度
	if (playtime==parseInt(document.getElementsByClassName("fp-progress")[0].style.width)){
	//点击播放
	}
	playtime=parseInt(document.getElementsByClassName("fp-progress")[0].style.width)
	//console.log(playtime,document.getElementsByClassName("fp-progress")[0].style.width)

	//获取进度条、需要时间、已看时间
	var mubiaotime=document.getElementsByClassName('g-study-prompt')[0].innerText
	let numArr = mubiaotime.match(/\d+/g);
	if (document.getElementById("viewTimeTxt")!=null){
		var areadytime=document.getElementById("viewTimeTxt");
	}else{
	document.getElementsByClassName("btn next crt")[0].click();
	nexttime=nexttime+1;
	}

    //获取答题框状态
    var dialog = document.getElementsByClassName("mylayer-btn mylayer-btn3 type0")[0];
    //点击关闭按钮关闭答题框
    if(dialog != undefined){
		console.log("发现有对话框,关闭之");
        //document.getElementsByClassName("mylayer-btn mylayer-btn3 type0")[0].click();
		dialog.click();
    }
	//获取当前活动,如果下一节,活动名称是不一样的
	//判断播放进度是否完成
	if(areadytime.innerHTML >= parseInt(numArr[0])){
		//点击下一节
		if (flag==0){
			console.log("点击下一活动");
			document.getElementsByClassName("btn next crt")[0].click();
			console.log(flag1+"eee");
			nexttime=nexttime+1;
			flag=1;
		}
		//获取当前活动,如果下一节,活动名称是不一样的
	}
	//这是已播放时间
    console.log("执行第"+ number + "次,已看了"+ nexttime+ "节");
}
function playorpause(){ //判断播放状态
	if (document.getElementById("player")!=null){	//如果存在视频播放器,有些页面是文档,没有视频
		if(document.getElementById("player").className.indexOf("is-paused")!=-1){ //播放状态,不等于-1是暂停状态
			return "pause"
		}else{return "play"}
	}else{return "false"}
	}
})();