zoukankan      html  css  js  c++  java
  • chrome监听事件getEventListeners

    监听事件

    Chrome DevTools命令行API提供了多种方式来观察和检查事件监听器。JavaScript在交互式页面中起着中心作用,并且浏览器为您提供了一些有用的工具来调试事件和事件处理程序。

    TL;DR

    • 使用monitorEvents()监听某一类型的事件。
    • 使用unmonitorEvents()停止监听。
    • 使用getEventListeners()获取DOM元素的监听器。
    • 使用Event Listeners Inspector(事件监听检查器)面板获取有关事件监听器的信息。

    监听事件

    monitorEvents()方法指示DevTools记录指定目标事件的信息。

    第一个参数是要监听的对象。如果未提供第二个参数,所有事件都会返回。要指定要监听的事件,传递一个字符串或字符串数组作为第二个参数。

    监听页面body上的点击事件:

    monitorEvents(document.body, "click");

    如果监视的事件是支持的 事件类型(DevTools 映射到一组标准事件名称) ,那么该方法将监听该类型的事件。

    命令行API 将事件类型完整映射到它们覆盖的事件中。

    要停止监听事件,请调用unmonitorEvents()方法,传递一个停止监视对象的参数。

    停止监听body对象上的事件:

    unmonitorEvents(document.body);

    查看在对象上注册事件监听器

    getEventListeners() API返回在指定对象上注册事件的监听器。

    返回值是一个对象,其中包含每个已注册事件类型的数组(例如,click 或 keydown)。 每个数组的成员都是对象,描述每中类型的已注册监听器。 例如,以下代码列出了在文档对象上所有已注册事件的监听器:

    getEventListeners(document);

    如果在指定对象上注册了多个监听器,那么该数组包含每个监听器成员。在以下示例中,在#scrollingList元素上为mousedown事件注册了两个事件监听器:

    2.png

    进一步展开每个对象,可以查看其属性:

    3.png

    查看在DOM元素上注册的事件监听器

    默认情况下,Elements(元素)面板中的Event Listeners(事件侦听器)窗格显示附加到页面的所有事件:

    4.png

    过滤器可以限制显示只针对所选节点的事件:

    5.png

    通过扩展对象,该面板显示事件侦听器的详细信息。在这个例子中,页面有两个通过jQuery附加的事件监听器:

    出处:  https://www.html.cn/doc/chrome-devtools/console/events/

  • 相关阅读:
    leetcode_1423. 可获得的最大点数
    leetcode_剑指 Offer 06. 从尾到头打印链表
    leetcode_剑指 Offer 05. 替换空格
    leetcode_49. 字母异位词分组
    leetcode_73. 矩阵置零
    leetcode_26. 删除排序数组中的重复项
    jstack查看JVM堆栈信息
    如何画一张架构图
    百年孤独家谱
    阿尔萨斯(Arthas)入门
  • 原文地址:https://www.cnblogs.com/mengff/p/12916904.html
Copyright © 2011-2022 走看看