Daimayuan Online Judge++

增强Daimayuan OJ的功能

目前為 2023-07-11 提交的版本,檢視 最新版本

// ==UserScript==
// @name         Daimayuan Online Judge++
// @namespace    http://tampermonkey.net/
// @version      0.2.0
// @description  增强Daimayuan OJ的功能
// @author       Chen
// @match        *://oj.daimayuan.top/*
// @icon         <$ICON$>
// @grant        none
// @license      MIT

// @antifeature  membership
// @compatible firefox
// @compatible chrome
// @compatible safari
// @compatible edge 需要新版 Edge
// @incompatible opera

// ==/UserScript==

(function() {
    // 'use strict';
    console.log("Daimayuan Online Judge++ 脚本开始加载! ");
    console.log("0%");
    setTimeout(void(0), 600);
    console.log("100%");
    setTimeout(void(0), 200);
    console.info("Daimayuan Online Judge++ 脚本加载完成! ");

    console.log("进度条动画效果注入中...")
    var elements = document.getElementsByClassName("progress-bar");
    for (var i=0;i<elements.length;i++) {
        let element = elements[i];
        console.log("找到一个进度条元素! ",element);
        element.classList.add("progress-bar-striped");
        console.log("已添加progress-bar-striped属性! ");
        element.classList.add("progress-bar-animated");
        console.log("已添加progress-bar-aniamated属性! ");
    }
    console.log("进度条动画效果注入完成! ")

    console.log("100变AC效果注入中...")
    elements = document.getElementsByClassName("uoj-score");
    console.log("找到"+elements.length+"个uoj-score元素! ");
    for (i=0;i<elements.length;i++) {
        let element = elements[i];
        if (element.innerHTML==="100") {
            if (element.style.color!=="rgb(0, 204, 0)") {
                continue;
            }
            console.log("找到一个为100分的uoj-score元素! ",element);
            // element.innerHTML = "AC";
            element.innerHTML = `<svg style="flex: none;width: 1em;text-align: center;" data-v-1b44b3e6="" data-v-beeebc6e="" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" class="icon svg-inline--fa fa-check fa-w-16" data-v-0640126c="" style="color: rgb(82, 196, 26);"><path data-v-1b44b3e6="" fill="currentColor" d="M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z" class=""></path></svg>`;
            element.title = "100, Accepted";
            //
            console.log("已将innerHTML改为'AC'! ");
        } else {
            if (element.innerHTML > 100) {
                continue;
            }
            continue;
            console.log("找到一个不为100分的uoj-score元素! ",element);
            element.innerHTML = "ERR";
            console.log("已将innerHTML改为'ERR'! ");
        }
    }
    console.log("100变AC效果效果注入完成! ")

    let username = "chenziang"; // change it
    console.log("自己名字("+username+")变绿色效果注入中...")
    elements = document.getElementsByClassName("uoj-username");
    console.log("找到"+elements.length+"个uoj-username元素! ");
    for (i=0;i<elements.length;i++) {
        let element = elements[i];
        if (element.innerHTML===username) {
            console.log("找到一个用户名为 "+username+" 的uoj-username元素! ",element);
            // element.innerHTML = username;
            element.title = "You ("+username+")";
            element.style.color = "rgb(0, 204, 0)";
            console.log("已将颜色改为'green'! ");
        }
    }
    console.log("自己名字("+username+")变绿色效果注入中...")
    // Your code here...
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址