您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Adds a method to elements to get their event listeners
// ==UserScript== // @name Event Listeners list // @description Adds a method to elements to get their event listeners // @version 1.0.1 // @grant none // @match *://*/* // @license MIT // @run-at document-start // @namespace https://greasyfork.org/users/223733 // ==/UserScript== function main() { var _addEventListener = Element.prototype.addEventListener; var _removeEventListener = Element.prototype.removeEventListener; Element.prototype.listEventListeners = function(name) { if (!name) return this._eventsList || {}; if (!this._eventsList) return [] return this._eventsList[name] || []; }; Element.prototype.addEventListener = function(name, callback) { _addEventListener.bind(this)(name, callback); if (!this._eventsList) this._eventsList = {}; if (!this._eventsList[name]) this._eventsList[name] = []; this._eventsList[name].push(callback); }; Element.prototype.removeEventListener = function(name, callback) { _removeEventListener.bind(this)(name, callback); if (!this._eventsList) return; if (!this._eventsList[name]) return; this._eventsList[name].splice(this._eventsList[name].indexOf(callback), 1); }; } var script = document.createElement('script'); script.appendChild(document.createTextNode('('+ main +')();')); (document.body || document.head || document.documentElement).appendChild(script);