富學寶典答題助手

富學寶典答題助手——收集答案、展示答案。使用方法,每次答題後點擊“收集”用來保存本次考題中的正確答案,每次答題前點擊“展示”用來將已經保存過的正確答案展示到題目下方。

Size

4.2 KB

Version

3.0.0

Created

Nov 5, 2025

Updated

about 1 month ago

1// ==UserScript==
2// @name         富學寶典答題助手
3// @namespace    iedu.foxconn.com
4// @version      3.0.0
5// @description  富學寶典答題助手——收集答案、展示答案。使用方法,每次答題後點擊“收集”用來保存本次考題中的正確答案,每次答題前點擊“展示”用來將已經保存過的正確答案展示到題目下方。
6// @author       otc
7// @match      https://iedu.foxconn.com/*
8// @license MIT
9// @require https://update.greasyfork.org/scripts/453745/1299382/Web%E6%8C%89%E9%88%95%E6%B3%A8%E5%85%A5.js
10// @downloadURL https://update.greasyfork.org/scripts/482787/%E5%AF%8C%E5%AD%B8%E5%AF%B6%E5%85%B8%E7%AD%94%E9%A1%8C%E5%8A%A9%E6%89%8B.user.js
11// @updateURL https://update.greasyfork.org/scripts/482787/%E5%AF%8C%E5%AD%B8%E5%AF%B6%E5%85%B8%E7%AD%94%E9%A1%8C%E5%8A%A9%E6%89%8B.meta.js
12// ==/UserScript==
13
14(function(){
15function ieduClean() {
16    localStorage.removeItem("answerList")
17}
18
19function ieduCollect() {
20    let lsAnswerList = localStorage.getItem('answerList');
21    let answerList = lsAnswerList ? JSON.parse(lsAnswerList) : [];
22    console.log(answerList);
23    let resultList = document.getElementsByClassName("question_warp");
24    for (let index = 0; index < resultList.length; index++) {
25        result = resultList[index];
26        questionTitle = result.getElementsByTagName("h3")[0].textContent.split(". ")[1];
27        questionOptionListHTML = result.getElementsByClassName("option_list")[0];
28        questionAnswer = result.getElementsByClassName("option_list")[0].getElementsByClassName("answer")[0].textContent;
29        questionAnswer = questionAnswer.split("\n")[0].trim();
30        answerList[answerList.length + 1] = {
31            questionTitle: questionTitle,
32            questionOptionListHTML: questionOptionListHTML,
33            questionAnswer: questionAnswer
34        }
35    }
36    localStorage.setItem("answerList", JSON.stringify(answerList));
37    console.log(localStorage.getItem("answerList"))
38}
39
40function ieduShowAnswer() {
41    let lsAnswerList = localStorage.getItem('answerList');
42    let answerList = lsAnswerList ? JSON.parse(lsAnswerList) : [];
43    if (answerList.length == 0) {
44        alert("请先打一遍题!将答案保存后,再进行此操作!")
45    }
46    let questionList = document.getElementsByClassName("question_warp");
47    for (let index = 0; index < questionList.length; index++) {
48        question = questionList[index];
49        questionTitle = question.getElementsByTagName("h3")[0].textContent.split(". ")[1];
50        filterdList = answerList.filter(function(c) {
51            if (!c) return false;
52            if (questionTitle == c.questionTitle) {
53                return true
54            }
55        })
56        console.log(filterdList);
57        for (let j = 0; j < filterdList.length; j++) {
58            console.log(filterdList[j].questionAnswer);
59            questionAnswerValue = filterdList[j].questionAnswer.split(':')[1]
60            question.append(questionAnswerValue);
61            console.log(question);
62            let options = question.getElementsByTagName("label")
63            for (let option of options) {
64                for(let v of questionAnswerValue.split("")){
65                    if(option.textContent.replaceAll("\n","").replaceAll("\t","").startsWith(v)){
66                        option.click()
67                    }
68                }
69                
70            }
71        }
72    }
73}
74
75function ieduSearch(questionTitle) {
76    let lsAnswerList = localStorage.getItem('answerList');
77    let answerList = lsAnswerList ? JSON.parse(lsAnswerList) : [];
78    if (answerList.length == 0) {
79        alert("请先打一遍题!将答案保存后,再进行此操作!")
80    }
81    let questionList = document.getElementsByClassName("question_warp");
82    filterdList = answerList.filter(function(c) {
83        if (!c) return false;
84        if (questionTitle == c.questionTitle) {
85            return true
86        }
87    }) ;
88        for (let index = 0; index < filterdList.length; index++) {
89        console.log(JSON.stringify(filterdList[index]))
90    }
91} 
92  
93  
94const buttons = [  
95  { name: '第一步:收集(請在答題完畢後觸發)', func: ieduCollect },  
96  { name: '第二步:展示(請在答題前觸發)', func: ieduShowAnswer }  
97];  
98createButtons(buttons);
99})();
富學寶典答題助手 | Robomonkey