Greasy Fork is available in English.
【2022/9/24 更新版】自动处理菁优个人组卷与试卷界面,使其能够直接打印
当前为
// ==UserScript==
// @name 菁优组卷与试卷打印处理程序
// @version 0.7
// @namespace https://codezhangborui.github.io
// @description 【2022/9/24 更新版】自动处理菁优个人组卷与试卷界面,使其能够直接打印
// @author CodeZhangBorui
// @match http://www.jyeoo.com/*/paper/detail/*
// @match https://www.jyeoo.com/*/paper/detail/*
// @match http://www.jyeoo.com/*/report/detail/*
// @match https://www.jyeoo.com/*/report/detail/*
// @icon https://www.jyeoo.com/favicon.ico
// @grant GM_registerMenuCommand
// @grant GM_notification
// @homepage https://github.io/CodeZhangBorui/Jyeoo-Print-Processer
// @license MIT
// ==/UserScript==
(function() {
'use strict';
var username = document.getElementsByClassName('user')[0].innerText;
console.log("%c菁优组卷打印处理程序 %cBy CodeZhangBorui Version 0.7\n%c菁优网用户 %s,欢迎您使用本脚本", 'font-size: large; font-family: "微软雅黑"', 'font-size: large; font-family: "Consolas"', 'font-size: large; font-family: "微软雅黑"', username);
GM_registerMenuCommand("处理后自动刷新", () => {
if (localStorage.getItem("EnableAutoRefresh") == 'N'){
localStorage.setItem("EnableAutoRefresh", 'Y');
GM_notification("处理后自动刷新:已开启");
} else {
localStorage.setItem("EnableAutoRefresh", 'N');
GM_notification("处理后自动刷新:已关闭");
}
})
if(localStorage.getItem("EnableAutoRefresh") == null) {
localStorage.setItem("EnableAutoRefresh", 'Y');
function FirstUseSettingsStep1() {
var promptback = prompt('是否要在完成处理后自动刷新 (是=Y,否=N)?\n使用默认值请留空\n注意:Safari 请填写 N', localStorage.getItem("EnableAutoRefresh"));
if(promptback == null) {
FirstUseSettingsStep1();
} else {
if(promptback == 'Y') {
localStorage.setItem("EnableAutoRefresh", 'Y');
return;
} else if(promptback == 'N') {
localStorage.setItem("EnableAutoRefresh", 'N');
return;
} else if(promptback == '') {
localStorage.setItem("EnableAutoRefresh", 'Y');
return;
} else {
alert('输入的内容无效!');
FirstUseSettingsStep1();
}
}
}
alert('欢迎使用 菁优组卷打印处理程序 By CodeZhangBorui\n这貌似是您第一次使用此程序,请先完成一些设置。');
FirstUseSettingsStep1();
alert('设置完成!\n脚本设置位于脚本列表处。');
}
console.log("🔹 创建按钮对象...");
var processButton = document.createElement('button');
processButton.innerHTML = '立即处理并打印';
processButton.setAttribute('style', 'margin: 5px; font');
processButton.setAttribute('id', 'ProcessButton');
processButton.onclick = function() {
/*
* 打印完成后自动刷新:true/false
*/
var EnableAutoRefresh = localStorage.getItem("EnableAutoRefresh")=='Y'?true:false;
function deleteElementByClassName(ClassName) {
while(1) {
var obj = document.getElementsByClassName(ClassName)[0];
if(obj == undefined) {
return;
}
obj.remove();
}
}
function deleteElementById(Id) {
var obj = document.getElementById(Id);
if(obj == undefined) {
return;
}
obj.remove();
}
//外部框架
deleteElementByClassName('top');
deleteElementById('borwserWarning');
deleteElementByClassName('brower-tip');
deleteElementByClassName('header');
deleteElementById('divNav')
deleteElementByClassName('clear');
deleteElementByClassName('foot');
deleteElementByClassName('fixed-bottom');
deleteElementById('divMsg');
deleteElementByClassName('return-top');
//Content里内容
deleteElementById('divBread');
deleteElementByClassName('fright');
deleteElementByClassName('h2-txt');
//删除所有fieldtip
deleteElementByClassName('fieldtip');
//通知并打印
console.log("✅ 处理成功!");
GM_notification("✅ 试卷处理成功!");
window.print();
//自动刷新
if(EnableAutoRefresh) {
window.location.reload();
}
}
console.log("🔹 查找将要添加的位置...");
var willAppendPlace = document.getElementsByClassName('btn-igroup-box')[0];
if(willAppendPlace == undefined) {
console.error("❌ 无法找到将要添加的位置 ClassName:'btn-igroup-box',程序现在将停止");
} else {
willAppendPlace.appendChild(processButton);
console.log("✅ 程序已就绪!");
}
})();