您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
MOOC学习伙伴
// getit // ==UserScript== // @name [ythere]一起MOOC做题吧~!(2020.10.17更新) // @name:en [ythere]let's learning on MOOC~! // @namespace ythere // @version 2020.10.17 // @description MOOC学习伙伴 // @description:en MOOC learning helper // @author ythere // @include *://www.cnmooc.org/* // @require http://cdn.bootcss.com/jquery/1.12.4/jquery.min.js // @grant GM_openInTab // @grant GM_setValue // @grant GM_getValue // @grant GM_xmlhttpRequest // @grant GM_addStyle // @grant unsafeWindow // @grant GM_getResourceURL // @grant GM_getResourceText // @license MIT2.0 // ==/UserScript== (function() { var test = true; 'use strict' // alert('hello world'); // Define region //------------------------------------------------------------- function addInfrastructure() { let style = document.createElement("style"); style.appendChild(document.createTextNode(` #mywidget { position: relative; animation: mywidget_ani 2s 1; border-radius: 8px; background: transparent; } #mywidget a { position: absolute; left: -75px; transition: 0.3s; padding: 15px 30px 15px 15px; text-decoration: none; color: white !important; border-radius: 8px; font: 20px "Microsoft YaHei", SimHei, helvetica, arial, verdana, tahoma, sans-serif; min-width: 80px; text-align: right; white-space: nowrap; } #mywidget a:hover { left: -8px; } .hcwidget { position: relative; animation: mywidget_ani 2s 1; border-radius: 8px; background: transparent; } .hcwidget a { position: absolute; left: -75px; transition: 0.3s; padding: 15px 30px 15px 15px; text-decoration: none; color: white !important; border-radius: 8px; font: 20px "Microsoft YaHei", SimHei, helvetica, arial, verdana, tahoma, sans-serif; min-width: 80px; text-align: right; white-space: nowrap; } .hcwidget a:hover { left: -8px; } #vparse { background-color: #f44336; } .hcparse { background-color: #f44336; } .test { background-color: #5FC074; } #myplaybutton { position: absolute; right: -8px; top: 14px; width: 0px; height: 0px; margin: 0px; border-width: 16px; border-style: solid; border-color: transparent transparent transparent white; } #testbutton { position: absolute; right: -8px; top: 14px; width: 0px; height: 0px; margin: 0px; border-width: 16px; border-style: solid; border-color: transparent transparent transparent white; } @keyframes mywidget_ani { 0% { transform: rotate(0deg); left: 20px; } 50% { transform: rotate(8deg); left: 500px; } 100% { transform: rotate(-360deg); left: 0px; } }`)); document.head.appendChild(style); } function pppp_id(input_kid) { return input_kid.parentElement.parentElement.parentElement.parentElement.id; } function test() { alert("hello"); } function autoSelect() { console.log("开始尝试获取答案。"); var is_init = true; var all_correct = false; var input_data =[]; var got_answer = []; var output_error = []; var out_k = 0; var iter = true var url_get_ans = "https://" + document.domain + "/examSubmit/" + document.getElementById("courseOpenId").value + "/getExamPaper-" + examSubmitId + ".mooc?testPaperId=" + examTestPaperId + "&paperId=0&modelType=view"; var success_flag = false; $.ajax({ type: 'POST', url: url_get_ans, success: function(data){ input_data = data; success_flag = true; console.log(data); console.log(input_data); }, error: function(){ console.log("初始网络请求失败,请重试运行脚本。"); }, async:false }); if (!input_data.examSubmit.submitContent) { var quizlist = document.querySelectorAll("[base_type=\"itt003\"]"); var num = quizlist.length; for (var i = 0; i<num; i++) { document.getElementById(quizlist[i].id).getElementsByTagName("a")[0].click(); } setTimeout(function(){document.getElementById("save_exam").click();},300); } else { var pointlist = $("practice-no clearfix"); var pre_submit_content = JSON.parse(input_data.examSubmit.submitContent); var submit_content = []; all_correct = true; var i; for (i = 0; i< pre_submit_content.length; i++) { submit_content.push(JSON.parse(pre_submit_content[i])); if (submit_content[i].errorFlag == "right") { if (!got_answer[i]) { got_answer[i] = true; console.log("第" + (i+1) +"题答案获取成功。"); } } else { all_correct = false; var trans = parseInt(submit_content[i].userAnswer)+1; trans.toString(); var pre_get = document.querySelector("[option_id=\""+submit_content[i].userAnswer+"\"] span a"); var aft_get = document.querySelector("[option_id=\""+trans+"\"] span a"); if (pre_get != null && aft_get != null) { var pre_chose = pppp_id(pre_get); var aft_chose = pppp_id(aft_get); if (pre_chose == aft_chose) { document.querySelector("[option_id=\""+trans+"\"] span a").click(); console.log("错误题目:第" + (i+1) +"题"); } else { document.getElementById(pre_chose).getElementsByTagName("a")[0].click(); console.log("错误题目:第" + (i+1) +"题"); } } else { document.getElementById(pre_chose).getElementsByTagName("a")[0].click(); console.log("错误题目:第" + (i+1) +"题"); } } } if (all_correct) { console.log("已经全选正确答案,请手动提交"); alert("已经全选正确答案,请手动提交"); } else { setTimeout(function(){document.getElementById("save_exam").click();},300); console.log("已经自动暂存,请再次打开测试并运行脚本"); } } } function showError() { console.log("开始尝试获取答案。"); var is_init = true; var all_correct = true; var input_data =[]; var got_answer = []; var output_error = []; var out_k = 0; var iter = true var url_get_ans = "https://" + document.domain + "/examSubmit/" + document.getElementById("courseOpenId").value + "/getExamPaper-" + examSubmitId + ".mooc?testPaperId=" + examTestPaperId + "&paperId=0&modelType=view"; var success_flag = false; $.ajax({ type: 'POST', url: url_get_ans, success: function(data){ input_data = data; success_flag = true; console.log(data); console.log(input_data); }, error: function(){ console.log("初始网络请求失败,请重试运行脚本。"); }, async:false }); if (!input_data.examSubmit.submitContent) { var quizlist = document.querySelectorAll("[base_type=\"itt003\"]"); var num = quizlist.length; for (var i = 0; i<num; i++) { // quizlist[i].getElementsByTagName("span").click(); // document.getElementById(now_quiz).getElementsByTagName("span").click(); document.querySelector("[class=\"practice-no clearfix\"]").children[i].style.color = 'red'; } } else { var pointlist = $("practice-no clearfix"); var pre_submit_content = JSON.parse(input_data.examSubmit.submitContent); var submit_content = []; all_correct = true; for (var j = 0; j< pre_submit_content.length; j++) { submit_content.push(JSON.parse(pre_submit_content[j])); if (submit_content[j].errorFlag != "right") { // var now_quiz = pppp_id(document.querySelector("[option_id=\""+submit_content[j].userAnswer+"\"] span a")); all_correct = false; document.querySelector("[class=\"practice-no clearfix\"]").children[i].style.color = 'red'; // document.getElementById(now_quiz).getElementsByTagName("span").click(); // document.querySelector("[class=\"practice-no clearfix\"]").children[j].style.color = 'red'; } } if (all_correct) { console.log("已经全选正确答案,请手动提交"); alert('已经全选正确答案,请手动提交'); } } } function tricks() { window.addEventListener('message', function(event) { if (~event.origin.indexOf('chinese-elements.com')) { var intervalId = window.setInterval(function() { $("#aside-nav").hide(); window.clearInterval(intervalId) }, 1000 * 2); } else { return; } }); const im = /chinese-elements.com/i; if (im.test(self.location.href)) { var intervalId = window.setInterval(function() { $("#aside-nav").hide(); window.clearInterval(intervalId); try { var frame = document.getElementById("player"); if (frame && frame.hasOwnProperty('contentWindow')) { var iframeWindow = frame.contentWindow; iframeWindow.postMessage("tricks", "*"); } } catch (e) { console.log(e); } }, 1000 * 2); } } //------------------------------------------------------------- let playurl = window.location.href; let rArray = playurl.split('?'); let cWeb = rArray[0]; const vSite = /m1907.cn/i; //------------------------------------------------------------- // Little tricks tricks(); if (vSite.test(cWeb)) { window["alert"] = function(e) {}; return; } //------------------------------------------------------------ //add a button to current website. const vWebsites = new Array(); vWebsites[0] = /cnmooc.org/i; vWebsites.every((item) => { if (item.test(cWeb)) { addInfrastructure(); var autoButton = $(` <div id="mywidget_1" class = "hcwidget" href='javascript:void(0)' target='_blank' style="z-index:9999; position:fixed;left:0px;top:270px;"> <a href="#" id="vparse">❀快乐学习<div id="myplaybutton_1"></div></a> </div> `); var ShowerrorButton = $(` <div id="mywidget_2" class = "hcwidget" href='javascript:void(0)' target='_blank' style="z-index:9999; position:fixed;left:0px;top:350px;"> <a href="#" class = "hcparse">❀快乐批改<div id="myplaybutton_2"></div></a> </div> `); $("body").append(autoButton); $("body").append(ShowerrorButton); // $:快速查找元素 // 向body中添加元素 // bind onclick event $("#mywidget_1").click(function() { autoSelect(); }); $("#mywidget_2").click(function() { showError(); }); return false; } return true; }); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址