您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
在个人空间显示每一道题的难度
// ==UserScript== // @name 洛谷题目难度显示 luogu dif render // @namespace http://tampermonkey.net/ // @version 0.9 // @description 在个人空间显示每一道题的难度 // @author rainy // @match https://www.luogu.com.cn/user/* // @grant none // @require https://code.jquery.com/jquery-1.12.4.min.js // ==/UserScript== var colors = ['rgb(191, 191, 191)', 'rgb(254, 76, 97)', 'rgb(243, 156, 17)', 'rgb(255, 193, 22)', 'rgb(82, 196, 26)', 'rgb(52, 152, 219)', 'rgb(157, 61, 207)', 'rgb(14, 29, 105)']; $(window).load(function(){ 'use strict'; var problems = []; for(var passed of window._feInjection.currentData.passedProblems) problems.push({pid: passed.pid, dif: passed.difficulty, rendered: false}); for(var tryed of window._feInjection.currentData.submittedProblems) problems.push({pid: tryed.pid, dif: tryed.difficulty, rendered: false}); var button = document.createElement("div"); button.style.backgroundColor = "#fff"; button.style.boxShadow = "0 1px 3px rgba(26,26,26,.1)" button.style.padding = "1.3em" $(".side").append(button); var h3Text = document.createElement("h3"); h3Text.style.fontWeight = "normal" h3Text.style.fontSize = "1.125em" h3Text.style.marginTop = "0" h3Text.style.marginBottom = ".5em" h3Text.style.fontFamily = "inherit" h3Text.style.lineHeight = "1.2" h3Text.innerText = "手动刷新" button.append(h3Text); var btn = document.createElement("button"); btn.style = "border-color: #3085d6;border-width: 1px;background-color: #3085d6;border-radius: 5px;color: white;box-shadow: none;"; btn.innerText = "刷新"; button.append(btn); btn.onclick = () => { for(var i = 0;i < problems.length;i++) problems[i].rendered = false; } setInterval(() => { if(window.location.href.split("#").length == 2 && window.location.href.split("#")[1] == 'practice'){ for(var i = 0;i < problems.length;i++) if(!problems[i].rendered) { var elements = document.querySelectorAll('a'); for(var el of elements) if(el.textContent == problems[i].pid) { if (el.classList) el.classList.remove("color-default"); else el.className = el.className.replace('color-default', ' '); problems[i].rendered = true; el.style.color = colors[problems[i].dif]; break; } } }else for(var j = 0;j < problems.length;j++) problems[j].rendered = false; }, 1000); });