无锡继续教育

无锡专业技术人员继续教育,自动播放下一个,倍速播放

目前為 2023-02-28 提交的版本,檢視 最新版本

// ==UserScript==
// @name         无锡继续教育
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  无锡专业技术人员继续教育,自动播放下一个,倍速播放
// @author       xiajie
// @match        https://61.160.99.102:8031/WXJXJY/*
// @grant        none
// @license      GPL
// ==/UserScript==

(function() {
    'use strict';

    //课程播放
    if(window.location.pathname == '/WXJXJY/Pages/trainingcenter/online-learn.aspx'){
        addratehtml();

        setTimeout(function(){
            setPlaybackRate();
        },1500);

        //播放速度检测
        setInterval(function () {
            var rate = localStorage.getItem("rate");
            if(rate && myVid.playbackRate != rate){
                console.log("恢复播放速度2");
                myVid.playbackRate = rate;
                $('.ratediv p').css('color','#333');
                $('.ratediv p[data-rate='+rate+']').css('color','red');
            }
        },3000)

        //检测视频是否正常播放
        var playProgress = "";
        setInterval(function(){
            var nowPlayProgress = $('.second-column .licheck').text();
            if(nowPlayProgress == ''){
                nowPlayProgress = $('.second-column li').eq(0).text();
            }
            console.log(playProgress)
            console.log(nowPlayProgress)
            if(nowPlayProgress == playProgress){
                console.log("播放异常,即将刷新页面");
                if(nowPlayProgress.indexOf("100") == -1){
                    location.reload();
                }
            }else{
                playProgress = nowPlayProgress;
            }
        },120000)

        function setPlaybackRate(){
            //console.log("倍速播放")
            var rate = localStorage.getItem("rate");
            if(rate){
                console.log("恢复播放速度1");
                myVid.playbackRate = rate;
            }else{
                console.log("初始化播放速度");
                localStorage.setItem("rate",1);
                myVid.playbackRate = rate;
            }
            //谷歌浏览器只有在静音模式才能自动播放
            myVid.muted = true;
            myVid.play();
            myVid.addEventListener("ended", function () {
                //最后视一个频播放完成后,不再刷新页面
                if($('.second-column li').last().text().indexOf("100") == -1){
                    location.reload();
                }
            })
        }
        function addratehtml(){
            var ratehtml = '<div class="ratediv" style="float: left;height:30px;width:100%"><p style="width: 80px;float: left;height:30px;line-height:30px;">播放速度:</p>';
            var rate = localStorage.getItem("rate");
            if(!rate){
                rate = 1;
            }
            for(var i=1;i<=3;i = i+0.5){
                if(i == rate){
                    ratehtml +='<p style="width: 50px;float: left;height:30px;line-height:30px;color:red;cursor:pointer;text-align:center;" data-rate='+i+'>X'+i+'</p>';
                }else{
                    ratehtml +='<p style="width: 50px;float: left;height:30px;line-height:30px;cursor:pointer;text-align:center;" data-rate='+i+'>X'+i+'</p>';
                }
            }
            ratehtml += '</div>';
            $('.main-nav').after(ratehtml);
            $('.content').css('margin-top','30px');
        }
        $( ".ratediv p" ).click( function () {
            var rate = $(this).data('rate');
            localStorage.setItem("rate",rate);
            myVid.playbackRate = rate;
            $('.ratediv p').css('color','#333');
            $(this).css('color','red');
        });
    }
})();