单选提交or多选全选

单选、多选、填空作答辅助帮手

// ==UserScript==
// @name         单选提交or多选全选
// @namespace    zhaiwei
// @version      0.0.0.1
// @description  单选、多选、填空作答辅助帮手
// @author       zhaiwei
// @match        https://pc.xuexi.cn/points/exam*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=xuexi.cn
// @grant        none
// @license      MIT
// @run-at       document-end
// ==/UserScript==

(function() {

    // 生成按钮
    var btn0 = document.createElement('button');
//    var btn1 = document.createElement('button');
    var btn2 = document.createElement('button');
    // 按钮文字
    btn0.innerText = '确定';
//    btn1.innerText = '按钮1';
    btn2.innerText = '提交';
    // 添加按钮的样式类名class值为
    btn0.setAttribute('class', 'addBtn');
//    btn1.setAttribute('class', 'fillBtn');
    btn2.setAttribute('class', 'clickBtn');
    // 生成style标签
    var style0 = document.createElement('style');
//    var style1 = document.createElement('style');
    var style2 = document.createElement('style');
    // 把样式写进去
    //颜色代号https://www.colorhexa.com/

    style0.innerText = `.addBtn{position:fixed;top:35%;left:30%;width:75px;height:55px;padding:3px 5px;border:1px solid #0d6efd;cursor:pointer;color:#0d6efd;font-size:14px;background-color:transparent;border-radius:5px;transition:color .15s ease-in-out,background-color .15s ease-in-out;z-index:9999999999999;}.addBtn:hover{background-color:#0d6efd;color:#fff;}`;
//    style1.innerText = `.fillBtn{position:fixed;top:250px;right:500px;width:75px;height:55px;padding:3px 5px;border:1px solid #008000;cursor:pointer;color:#008000;font-size:14px;background-color:transparent;border-radius:5px;transition:color .15s ease-in-out,background-color .15s ease-in-out;z-index:9999999999999;}.fillBtn:hover{background-color:#008000;color:#fff;}`;
    style2.innerText = `.clickBtn{position:fixed;top:55%;left:30%;width:75px;height:55px;padding:3px 5px;border:1px solid #fd240d;cursor:pointer;color:#fd240d;font-size:14px;background-color:transparent;border-radius:5px;transition:color .15s ease-in-out,background-color .15s ease-in-out;z-index:9999999999999;}.clickBtn:hover{background-color:#fd240d;color:#fff;}`;
    // 在head中添加style标签
    document.head.appendChild(style0);
//   document.head.appendChild(style1);
    document.head.appendChild(style2);
    // 在body中添加button按钮
    document.body.appendChild(btn0);
//    document.body.appendChild(btn1);
    document.body.appendChild(btn2);
    // 点击按钮去执行对应函数
    document.querySelector('.addBtn').addEventListener('click', function () {
        submit();
    })
/*    document.querySelector('.fillBtn').addEventListener('click', function () {
        fillAll();
    })
    */

    document.querySelector('.clickBtn').addEventListener('click', function () {
        if(document.querySelector("#app > div > div > div > div.detail-body > div.question > div.q-header").textContent.includes('单选题') || document.querySelector("#app > div > div > div > div.detail-body > div.question > div.q-header").textContent.includes('填空题')){
            submit();
        }else if(document.querySelector("#app > div > div > div > div.detail-body > div.question > div.q-header").textContent.includes('多选题')){
            checkAll();
        }
    })

//移除顶部、底部
    var polish = function(){
        let dingbu = document.querySelector("#app > div > div.layout-header")
        if (dingbu != null){
            dingbu.parentNode.removeChild(dingbu);
            }
//
        let dibu = document.querySelector("#app > div > div.layout-footer")
        if (dibu != null){
            dibu.parentNode.removeChild(dibu);
            }
    }
setInterval(polish,50);
    // 判断函数
    function addAll() {

    //新增
    if(!document.querySelectorAll(".el-dialog__title")[1]){
        document.querySelectorAll("button")[2].click();
    }/*
    else{
        $("span:contains(取 消)")[0].click()
    }
*/
    }

//定义函数-点击提示
var tipClick = function(){
    let tip = document.querySelector("#app > div > div.layout-body > div > div.detail-body > div.question > div.q-footer > span")
    switch (tip.className.length) {
        case 4:
            document.querySelector("#app > div > div.layout-body > div > div.detail-body > div.question > div.q-footer > span").click();
            break;
    }
}

    //提交函数
  function submit() {
//        $("button").children[0].click();
      setTimeout("document.querySelectorAll('.next-btn')[0].click()",10);
      setTimeout("document.querySelectorAll('.submit-btn')[0].click()",30);
}
    //全选函数
    function checkAll() {
        var len = document.querySelectorAll(".choosable").length;
        for (let index = 0; index < len; index++) {
             document.querySelectorAll(".choosable")[index].click();
}
        submit();

    }
    //点击提示-重复执行

    setInterval(tipClick,50);
//更改按钮文字
    var labelUp = function(){
    if(document.querySelector("#app > div > div > div > div.detail-body > div.question > div.q-header").textContent.includes('多选题')){
            document.getElementsByClassName("clickBtn")[0].innerText="全选";
        }else{
            document.getElementsByClassName("clickBtn")[0].innerText="提交";
        }
    }
    setInterval(labelUp,100);
})();