您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
A simple event emitter implemention, support `on`/`off`/`emit` methods.
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.gf.qytechs.cn/scripts/428695/945691/CKEventEmitter.js
// ==UserScript== // @name CKEventEmitter // @namespace eventemitter.ckylin.site // @version 0.1 // @author CKylinMC // @grant unsafeWindow // @license GPLv3 License // ==/UserScript== class EventEmitter { handlers = {}; on(name, func) { if (!(func instanceof Function)) throw "Param must be func!"; if (!(name in this.handlers)) { this.handlers[name] = []; } this.handlers[name].push(func); } off(name, func) { if (!(func instanceof Function)) throw "Param must be func!"; if (name in this.handlers) { for (let i = 0; i < this.handlers[name].length; i++) { if (this.handlers[name][i] === func) { this.handlers[name].splice(i, 1); i--; } } } } emit(name, ...args) { if (name in this.handlers) { for (let func of this.handlers[name]) { try { func(...args); } catch (e) { console.error('ERROR:', e); } } } } }
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址