您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
设置获取配置的APIs
当前为
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.gf.qytechs.cn/scripts/476522/1258972/Config_Manager.js
// ==UserScript== // @name Config_Manager // @namespace Violentmonkey Scripts // @grant GM_getValue // @grant GM_setValue // @grant GM_addValueChangeListener // @grant GM_registerMenuCommand // @grant GM_unregisterMenuCommand // @author axototl // @description 设置获取配置的APIs // ==/UserScript== 'use strict'; let config = {}; let register; (() => { // const _APIs = ["GM_getValue", "GM_setValue", "GM_addValueChangeListener", "GM_registerMenuCommand", "GM_unregisterMenuCommand"]; // for (const val in _APIs) // if (!(val in globalThis)) throw new Error("需要API权限!!!"); const boolean_prefix = ["❌(已禁用)", "✅(已启用)"]; config = {}; register = ({name, default: def, type = "other", prompts, input: func = prompt, callback: listener = Function.prototype}) => { let val = GM_getValue(name, def); config[name] = val; if (type === 'bool') { let cont; const reg = () => cont = GM_registerMenuCommand(boolean_prefix[val | 0] + prompts, () => GM_setValue(name, !val)); GM_addValueChangeListener(name, (_1, ov, newval) => { config[name] = val = newval; GM_unregisterMenuCommand(cont); reg(); listener(name, ov, newval, cont); }); reg(); } else if (type === "other") { const cont = GM_registerMenuCommand(prompts, () => GM_setValue(name, func())); GM_addValueChangeListener(name, (_1, ov, newval) => (config[name] = newval, listener(name, ov, newval, cont))); } console.debug(type, name, "\nRegistered!"); }; })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址