您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
grade change script
// ==UserScript== // @name kgc // @namespace http://tampermonkey.net/ // @license MIT // @version 1.0 // @description grade change script // @author Minoa // @match https://login-learn.k12.com/* // @grant none // ==/UserScript== (function() { 'use strict'; // Function to get letter grade based on percentage function getLetterGrade(percent) { if (percent >= 90) return 'A'; if (percent >= 80) return 'B'; if (percent >= 70) return 'C'; if (percent >= 60) return 'D'; return 'F'; } // Function to modify grade percentage and letter function modifyGrade(gradeElement) { const percentElement = gradeElement.querySelector('.grade-percent'); const letterElement = gradeElement.querySelector('.grade-letter'); if (!percentElement) return; // extract current percentage (remove % symbol if present) const currentPercent = parseFloat(percentElement.textContent.replace('%', '')); if (isNaN(currentPercent)) return; let newPercent = currentPercent; // handle grades above 90% if (currentPercent > 90) { const firstDigit = Math.floor(currentPercent / 10); const secondDigit = currentPercent % 10; newPercent = currentPercent - (firstDigit + secondDigit / 10); } // handle grades below 72% else if (currentPercent < 72) { newPercent = currentPercent + 3; } // ensure grade never exceeds 100% newPercent = Math.min(100, newPercent).toFixed(1); percentElement.textContent = newPercent + '%'; // update letter grade if element exists if (letterElement) { letterElement.textContent = getLetterGrade(parseFloat(newPercent)); } } // Function to process all grade elements function processGrades() { const gradeElements = document.querySelectorAll('div.grade'); gradeElements.forEach(modifyGrade); } // Create MutationObserver to handle dynamically loaded content const observer = new MutationObserver((mutations) => { mutations.forEach((mutation) => { if (mutation.addedNodes.length) { processGrades(); } }); }); // Initial processing processGrades(); // Start observing document for dynamic changes observer.observe(document.body, { childList: true, subtree: true }); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址