您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
2025-05-05
// ==UserScript== // @name Star Citizen RSI Specturm - Auto Dark Mode // @namespace Kyan Violentmonkey Scripts // @match *://robertsspaceindustries.com/spectrum/* // @grant none // @version 1.1.1 // @license MIT // @author Kyan // @description 2025-05-05 // ==/UserScript== ;(function () { 'use strict'; console.log("[Auto Dark Mode] Start.") /* Functions */ const is_dark = () => document.querySelector("#app").classList.contains("theme-dark") const is_light = () => document.querySelector("#app").classList.contains("theme-light") const to_dark = () => { document.querySelector("#app").classList.remove("theme-light") document.querySelector("#app").classList.add("theme-dark") } const to_light = () => { document.querySelector("#app").classList.remove("theme-dark") document.querySelector("#app").classList.add("theme-light") } const is_prefer_dark = () => window.matchMedia("(prefers-color-scheme: dark)").matches const is_prefer_light = () => window.matchMedia("(prefers-color-scheme: light)").matches const when_ready = (callback) => { let timer = window.setInterval(() => { console.log("[Auto Dark Mode] Waiting") if (document.querySelector("#app") && !document.querySelector("#app").classList.contains("loading")) { console.log("[Auto Dark Mode] Ready") clearInterval(timer) callback() } }, 1000) window.setTimeout(() => clearInterval(timer), 15000) } /* Main */ when_ready(() => { if (is_dark() && is_prefer_light()) { to_light() } else if (is_light() && is_prefer_dark()) { to_dark() } else { console.log(`[Auto Dark Mode] Prefer: ${is_prefer_light()?"✓":"✗"}Light, ${is_prefer_dark()?"✓":"✗"}Dark`) console.log(`[Auto Dark Mode] Current: ${is_light()?"✓":"✗"}Light, ${is_dark()?"✓":"✗"}Dark`) } }) })();