UCAS-SessionTimeoutHelper

block the deadline alert from ucas website to avoid session expire

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey, Greasemonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да инсталирате разширение, като например Tampermonkey .

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Userscripts.

За да инсталирате скрипта, трябва да инсталирате разширение като Tampermonkey.

За да инсталирате този скрипт, трябва да имате инсталиран скриптов мениджър.

(Вече имам скриптов мениджър, искам да го инсталирам!)

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

(Вече имам инсталиран мениджър на стиловете, искам да го инсталирам!)

// ==UserScript==
// @name         UCAS-SessionTimeoutHelper
// @namespace    http://tampermonkey.net/
// @version      0.40
// @description  block the deadline alert from ucas website to avoid session expire
// @author       y4ung
// @match        https://course.ucas.ac.cn/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    //alert("Run script BlockAlertHelper. By y4ung");
    window.setInterval(function(){
        checkSessionTimeoout();
    }, 60000);

})();

function checkSessionTimeoout(){//检查会话是否快要过期
    var timeout_alert_body = document.getElementById("timeout_alert_body");
    if (null !== (timeout_alert_body)){//timeout_alert_body不为空,即已经出现会话过期的提示窗口
        console.log("[INFO] 检测到会话过期提示框: %s", new Date().toLocaleString());
        clickBtn(timeout_alert_body.children[1]);

    }
}

function clickBtn(btn) { // 模拟浏览器的鼠标点击事件
    const event = new MouseEvent('click', {
        view: window,
        bubbles: true,
        cancelable: true
    });
    btn.dispatchEvent(event);
}