// ==UserScript== // @name 学堂在线助手 // @namespace http://tampermonkey.net/ // @version 0.1 // @description 学堂在线助手。支持视频自动顺序播放、后台播放。 // @author wang0.618@qq.com // @match https://*.xuetangx.com/lms* // @grant none // @downloadURL none // ==/UserScript== (function() { 'use strict'; var hashs = window.location.hash.split('/'); if(hashs[1]!='video') return; var $ = jQuery; // 去除后台检测 window.onblur = function(){}; setTimeout(function(){ window.onblur = function(){};}, 1000); // 视频自动播放 $('#video').attr('autoplay', 'autoplay'); setInterval(function(){ $('#video')[0].play(); }, 1000); // 周期性检查视频卡住 setInterval(check_stuck, 60000); var items = []; // parent_id, item_id var next ; do_ajax(5); // 检测视频卡住 var last_timestr = ''; var stuck_cnt = 0; function check_stuck(){ if($('.xt_video_player_current_time_display').text()!=last_timestr){ stuck_cnt++; last_timestr = $('.xt_video_player_current_time_display').text(); }else{ stuck_cnt = 0; } if (stuck_cnt>=3) window.location.reload(); } function do_ajax(retry_cnt){ $.ajax({ url: "/lms/api/v1/course/"+hashs[2]+"/courseware/", data:{class_id:hashs[3]}, dataType: "json", type: 'post', error:function(){ console.log('error in ajax'); if(retry_cnt>0) setTimeout(function(){ do_ajax(retry_cnt-1); }, 3000); else alert('网络异常,无法自动播放'); }, success: ajax_success_callback }); } function ajax_success_callback(data){ console.log(data); data = data.data; for(var i=0;i