您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
教务系统自动填写账号密码,按下回车一键自动评教,iframe框架内显示看板娘功能
当前为
// ==UserScript== // @name SYUCT沈阳化工大学教务系统助手 // @namespace http://tampermonkey.net/ // @version 3.1 // @description 教务系统自动填写账号密码,按下回车一键自动评教,iframe框架内显示看板娘功能 // @author Yuhang Shang // @match *://jws.syuct.edu.cn/* // @icon https://www.shangyuhang.icu/favicon/64_64.ico // @grant none // @license MIT // ==/UserScript== (function() { 'use strict'; //使用帮助 //在使用脚本按键前:请先点击评教页面表格任意位置,使脚本能够获取焦点 //按下回车键自动填写教师评价(随机一行是良好,其余行均为优秀) //======================================= // 请在此填写您的账号和密码 //======================================= var your_username='你的账号'; var your_password='你的密码'; //全局变量 var StudentLoginURL='default2.aspx';//学生登录页面url var iiframe;//用来获取内部iframe框架的变量 var girl_link;//存储引入桌宠项目所需添加的link元素 var girl_script;//存储引入桌宠项目所需添加的script元素 var randNum;//随机数 //键盘监听事件 document.addEventListener('keydown', my); function my(e){ if(e.keyCode==13){ write(); } } //自动评价功能 function write(){ //此时我默认前两列是大写,后面的列数都为小写,如果有4列以上的评教结构且非此规则的话,请告知我 //查找有多少行 let rows=document.querySelector('#DataGrid1').rows.length-1; //查找有多少列(减去前三列非填写项,2列大写情况) let colums = document.querySelector('#DataGrid1').rows[0].cells.length-3; //判断是单列评教还是多列评教 if(colums == 1){ singleWrite(rows,colums); } else{ binaryWrite(rows,colums); } //随机一行为良好的备用代码 //var final=document.getElementById('DataGrid1__ctl2_JS1'); //final.value='良好'; //点击保存按钮 document.querySelector('#Button1').click(); } //多列评教 //二重循环遍历行列 //要两次遍历,因为学校系统很愚蠢的第三列第四列又变为小写规则编号命名,我不理解 function binaryWrite(rows,colums){ //第一次遍历行列,大写形式 for(let j=1;j<=2;j++){ //先将所有行全填为优秀 for(let i=0;i<rows;i++){ let my_selector='#DataGrid1__ctl'+(i+2)+'_JS'+j; document.querySelector(my_selector).value='优秀'; //console.log(my_selector); } //再随机一行填为良好 randNum=randomNum(2,1+rows); let my_selector2='#DataGrid1__ctl'+randNum+'_JS'+j; document.querySelector(my_selector2).value='良好'; } //第二次遍历行列,小写形式 for(let j=3;j<=colums;j++){ //先将所有行全填为优秀 for(let i=0;i<rows;i++){ let my_selector='#DataGrid1__ctl'+(i+2)+'_js'+j; document.querySelector(my_selector).value='优秀'; } //再随机一行填为良好 randNum=randomNum(2,1+rows); let my_selector2='#DataGrid1__ctl'+randNum+'_js'+j; document.querySelector(my_selector2).value='良好'; } } //单列评教 function singleWrite(rows,colums) { //先将所有行全填为优秀 for(let i=0;i<rows;i++){ let my_selector='#DataGrid1__ctl'+(i+2)+'_JS1'; document.querySelector(my_selector).value='优秀'; //console.log(my_selector); } //再随机一行填为良好 randNum=randomNum(2,1+rows); let my_selector2='#DataGrid1__ctl'+randNum+'_JS1'; document.querySelector(my_selector2).value='良好'; } //随机函数,返回一个介于minNum和maxNum之间的值(包括两端边界) function randomNum(minNum,maxNum){ switch(arguments.length){ case 1: return parseInt(Math.random()*minNum+1,10);break; case 2: return parseInt(Math.random()*(maxNum-minNum+1)+minNum,10);break; default: return 0;break; } } //学生登录系统 var windowURL = window.location.href; if (windowURL.indexOf(StudentLoginURL) != -1) { createGirl(); document.querySelector('#txtUserName').value=your_username; document.querySelector('#TextBox2').value=your_password; } //添加看板娘 //createGirl(); //window.onload=function {setTimeout(deleteGirl(),5000);} //判断是否有iframe框架 if(iiframe = document.getElementById('iframeautoheight')) { //等待内部框架加载完毕再生成看板娘 iiframe.onload=function(){ //获取iframe窗口句柄 iiframe = document.getElementById('iframeautoheight').contentWindow; //添加link元素 girl_link = iiframe.document.createElement('link'); girl_link.setAttribute('hreflang','zh'); girl_link.setAttribute('rel','stylesheet'); girl_link.setAttribute('href','https://cdn.jsdelivr.net/npm/font-awesome/css/font-awesome.min.css'); girl_link.setAttribute('id','girl_link'); iiframe.document.head.appendChild(girl_link); //添加script元素 girl_script=iiframe.document.createElement('script'); girl_script.setAttribute('src','https://cdn.jsdelivr.net/gh/stevenjoezhang/live2d-widget@latest/autoload.js'); girl_script.setAttribute('id','girl_script'); iiframe.document.head.appendChild(girl_script);} } //在内嵌iframe页面删除看板娘 function deleteGirl(){ window.alert('delete'); iiframe = document.getElementById('#iframeautoheight').contentWindow; iiframe.document.querySelector('#live2d').remove(); } //左下角添加看板娘(全局作用,慎用) function createGirl(){ var girl_link = document.createElement('link'); girl_link.setAttribute('hreflang','zh'); girl_link.setAttribute('rel','stylesheet'); girl_link.setAttribute('href','https://cdn.jsdelivr.net/npm/font-awesome/css/font-awesome.min.css'); document.head.appendChild(girl_link); var girl_script=document.createElement('script'); girl_script.setAttribute('src','https://cdn.jsdelivr.net/gh/stevenjoezhang/live2d-widget@latest/autoload.js'); document.head.appendChild(girl_script); } })(); //抢课卡进服务器专用 //公选课按钮 //var button2=document.querySelector("#headDiv > ul > li:nth-child(2) > ul > li:nth-child(3) > a"); //button2.click; //var aaaa=document.querySelector("#headDiv > ul > li:nth-child(2) > a > span") //(aaaa.textContent='网上选课'){ //体育课按钮 // var button1=document.querySelector("#headDiv > ul > li:nth-child(2) > ul > li:nth-child(2) > a"); // button1.click(); // } //else{ // location.reload(); // } // GetMc('选体育课');