JavaScript 获取所有 addEventListener 的方法

本文提供了一个 JavaScript 代码示例,演示如何获取网页中所有元素的 addEventListener 内容。

var elements = document.getElementsByTagName('*');
var eventListeners = [];

for (var i = 0; i < elements.length; i++) {
  var element = elements[i];
  var listeners = getEventListeners(element);
  
  for (var eventType in listeners) {
    var eventListener = listeners[eventType];
    eventListeners.push(eventListener);
  }
}

console.log(eventListeners);

该代码将检索页面中的所有元素,并使用 getEventListeners 函数获取每个元素的所有事件监听器。然后,这些监听器将被推入一个数组中。最后,您可以在控制台中查看这个数组。

注意:

  • 该方法只适用于使用 addEventListener 注册的事件监听器。
  • 由于 getEventListeners 函数是浏览器 API 中的一个内部方法,因此可能会在不同的浏览器中存在兼容性问题。
  • 如果您需要更精确的控制,您可以使用 Object.getOwnPropertyDescriptors() 方法来获取特定元素的属性描述符,包括事件监听器。
JavaScript 获取所有 addEventListener 的方法

原文地址: https://www.cveoy.top/t/topic/nVat 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录