// ==UserScript==
// @name 优学院-YouXueYuan-看视频
// @namespace https://github.com/Brush-JIM/YouXueYuan-JavaScript
// @version 0.4
// @description js没学过,技术纯属渣渣。可用来看优学院视频而不用手动点击。
// @author Brush-JIM
// @match https://ua.ulearning.cn/learnCourse/learnCourse.html?courseId=*&chapterId=*
// @grant none
// @grant unsafeWindow
// @run-at document-idle
// @icon https://www.ulearning.cn/ulearning/favicon.ico
// @downloadURL none
// ==/UserScript==
(function() {
'use strict';
//删除开小差提示框
document.querySelector("[data-bind=\"if: $root.modalType() == 'suspend'\"]").parentNode.removeChild(document.querySelector("[data-bind=\"if: $root.modalType() == 'suspend'\"]"));
var elements = document.getElementsByClassName('operating-area')[0];
//删除客服按钮
elements.removeChild(document.getElementsByClassName('custom-service')[0]);
//删除统计元素
document.getElementById("statModal").parentNode.removeChild(document.getElementById("statModal"));
//删除指导元素
document.getElementsByClassName("user-guide")[0].parentNode.removeChild(document.getElementsByClassName("user-guide")[0]);
//在原客服按钮增加上车按钮
var div = document.createElement("div");
div.setAttribute("class", "custom-service");
div.setAttribute("style", "z-index:999999");
div.innerHTML='';
elements.appendChild(div);
for (var i = 0;i <= 6;i++) {
setTimeout(function() {
//如果有倒计时,则删除
try
{
document.getElementsByClassName("count-down")[0].parentNode.removeChild(document.getElementsByClassName("count-down")[0]);
}
catch (error) {
console.log(error);
}
}, 3000);
};
//定义开始函数
window.start_watch = function() {
//删除开始按钮并增加停止按钮
elements.removeChild(document.getElementsByClassName('custom-service')[0]);
var div = document.createElement("div");
div.setAttribute("class", "custom-service");
div.setAttribute("style", "z-index:999999");
div.innerHTML='';
elements.appendChild(div);
window.myVar = setInterval(function(){
//window.tiankong();
if (document.getElementsByClassName("file-media")[0] != null) {
if (document.querySelector("[aria-label='Pause']") != null) {
if (document.querySelector("[data-bind='text: $root.i18nMessageText().finished']") == null) {
console.log('还未播放完');
return ;
}
else {
console.log('显示已看完,但是还未播完');
}
}
console.log('视频');
if (document.querySelector("[data-bind='text: $root.i18nMessageText().finished']") == null) {
console.log('开始播放视频');
document.querySelector("[aria-label='Play']").click();
//修改倍速,1.5倍速变15倍速,1.25倍速变10倍速,0.75变5倍速
//请确定网速能跟得上
document.querySelector("input[value='1.50']").value = 15;
document.querySelector("input[value='1.25']").value = 10;
document.querySelector("input[value='0.75']").value = 5;
for (var x = 0;x < document.querySelectorAll("label[class='mejs__speed-selector-label']").length;x++)
{
if (x == 0)
{
document.querySelectorAll("label[class='mejs__speed-selector-label']")[x].innerHTML = '15.00x';
}
else if (x == 1)
{
document.querySelectorAll("label[class='mejs__speed-selector-label']")[x].innerHTML = '10.00x';
}
else
{
document.querySelectorAll("label[class='mejs__speed-selector-label']")[x].innerHTML = '5.00x';
}
}
return ;
}
else {
console.log('视频播放完毕');
}
}
console.log('下一页');
window.koLearnCourseViewModel.goNextPage();
for (var i = 0; i < document.querySelectorAll("[data-bind='text: $root.nextPageName()']").length; ++i) {
console.log(document.querySelectorAll("[data-bind='text: $root.nextPageName()']")[i].innerHTML);
if (document.querySelectorAll("[data-bind='text: $root.nextPageName()']")[i].innerHTML == "没有了") {
setTimeout(function(){
try
{
window.koLearnCourseViewModel.goBack();
}
catch (error)
{
console.log(error);
}
},3000);
clearInterval(window.myVar);
return (true);
};
};
if (document.getElementsByClassName('modal-backdrop fade in')[0] != null) {
console.log('提示框');
if (document.querySelector("[data-bind='text: $root.i18nMsgText().gotIt']") != null) {
console.log('视频提示');
document.querySelector("[data-bind='text: $root.i18nMsgText().gotIt']").click();
}
else if (document.querySelector("[data-bind='text: $root.i18nMsgText().confirmLeave']") != null) {
console.log('未完成确认');
document.querySelector("[data-bind='text: $root.i18nMsgText().confirmLeave']").click();
}
else {
alert('未知情况,暂无应对方案,请将本页面截屏,返回给作者。');
return (false);
}
};
for (i = 0;i <= 6;i++) {
setTimeout(function() {
//如果有倒计时,则删除
try
{
document.getElementsByClassName("count-down")[0].parentNode.removeChild(document.getElementsByClassName("count-down")[0]);
}
catch (error) {
console.log(error);
}
}, 3000);
};
}
,3000);
};
//定义停止函数
window.stop_watch = function() {
clearInterval(window.myVar);
//删除停止按钮并增加开始按钮
elements.removeChild(document.getElementsByClassName('custom-service')[0]);
var div = document.createElement("div");
div.setAttribute("class", "custom-service");
div.setAttribute("style", "z-index:999999");
div.innerHTML='';
elements.appendChild(div);
console.log('刹车成功');
};
})();