mooc自动互评脚本笔记---2025年10月11日

1. 记录

innerHTML 是 JavaScript 中 HTML DOM 的一个属性,它的作用是 获取或设置某个元素内部的 HTML 内容。这里用作设置内容;

代码笔记:

javascript 复制代码
// ==UserScript==
// @name         mooc 一键互评
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  try to take over the world!
// @author       苍晓生
// @match        https://www.icourse163.org/*
// @icon         https://edu-image.nosdn.127.net/3310f128e53b406f94400f7ae6046db2.png?imageView&quality=100
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    let x = 3;
    // Your code here...
    // 在页面创建按钮
    let bt = document.createElement("button");
    bt.innerHTML = "一键互评";
    bt.onclick = function() {
        start();
    }
    // 设置位置,不随页面滚动
    bt.style.position="fixed";
    bt.style.left=0;
    bt.style.top="50%";
    //设置 z-index 值,保证按钮在最上层
    bt.style.zIndex=3333;
    document.body.appendChild(bt);
})();


function run() {
    //先写 评语
    let yj = ["ok","bucuo 啊","很好","haojimi"]
    let texts = document.getElementsByClassName("j-textarea inputtxt")
    for (let i = 0; i < texts.length; i++) {
        let index = Math.floor(Math.random() * yj.length);
        texts[i].value = yj[index];
    }

    var divs = document.getElementsByClassName("s");
    for (let i = 0; i < divs.length; i++) {
        let div = divs[i].querySelectorAll("input[type='radio']");
        let lastrdio = div[div.length - 1];
        lastrdio.checked = true;
    }

    // 点击提交按钮
    var sumbtn = document.getElementsByClassName("j-submitbtn");
    sumbtn[sumbtn.length - 1].click();

    // 返回主页面
    var backbtn = document.getElementsByClassName("j-backbtn");
    backbtn[backbtn.length - 1].click();
}

function start() {
    // console.log("开始一键互评");
    // 查找"前往作业"按钮元素,这里通过类名组合来更精准定位
    var startbtn = document.getElementsByClassName("j-getnextbtn");
    startbtn[0].click();
    setTimeout(run,1000);
}
相关推荐
左左右右左右摇晃1 小时前
JVM 笔记--分代工程以及分代的算法
jvm·笔记
-Springer-1 小时前
STM32 学习 —— 个人学习笔记9-3(FlyMcu 串口下载)
笔记·stm32·学习
中屹指纹浏览器3 小时前
2026指纹浏览器与代理IP协同安全体系构建——从特征匹配到行为风控的全链路防护
经验分享·笔记
لا معنى له3 小时前
什么是Active Inference(主动推理)? ——学习笔记
笔记·学习
zhouping@3 小时前
JAVA学习笔记day06
java·笔记·学习
Jack.Jia3 小时前
GPS原理笔记三——GPS卫星轨道理论和计算
笔记
庞轩px4 小时前
内存区域的演进与直接内存——JVM性能优化的权衡艺术
java·jvm·笔记·性能优化
liangshanbo12154 小时前
大模型 RAG 向量数据工程全链路架构笔记
笔记·架构
罗罗攀4 小时前
PyTorch学习笔记|张量的广播和科学运算
人工智能·pytorch·笔记·python·学习
左左右右左右摇晃5 小时前
Java 笔记--OOM产生原因以及解决方法
java·笔记