【问题标题】:Debugging custom DOM events in browser在浏览器中调试自定义 DOM 事件
【发布时间】:2015-08-02 21:50:39
【问题描述】:

是否可以在浏览器中看到(调试)从 DOM 元素触发的自定义事件?

假设我想查看 Bootstrap Collapse 的哪个特定元素触发了show.bs.collapse event,我能以某种方式在 Chrome 开发工具中看到它吗?

【问题讨论】:

    标签: dom google-chrome-devtools dom-events


    【解决方案1】:

    您可以使用Visual Event 2 小书签。用于检查哪些事件附加到特定 DOM 元素的好工具。

    【讨论】:

    【解决方案2】:
    【解决方案3】:

    首先,Monitor Events 将处理正常的 JS 事件。然而,Bootstrap 事件是 jQuery 事件,所以 vanilla JS 事件监听器不会监听它们。

    要监听 jQuery 事件,请在控制台中运行以下代码 sn-p: jQuery('body').bind("show.bs.collapse", function(e){console.log(e);});

    用你想要的任何事件替换“shown.bs.collapse”。当它们被记录时,只需检查事件的目标元素就知道是什么触发了它。

    现在,反过来,看看什么是监听事件。在元素面板中,如果您转到事件侦听器选项卡并取消选中“祖先”,那么您将只看到元素上直接绑定的事件侦听器。这样你就知道什么在监听事件,这样你就可以检查当它被触发时应该做什么。这很重要,因为您可能会发现 'body' 没有收到该事件,因为它可能已取消冒泡。因此,如果上述 sn-p 不起作用,则需要在侦听事件的元素中检查气泡取消。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-27
      • 2011-04-01
      • 1970-01-01
      • 2012-01-01
      • 2014-11-15
      • 2012-03-13
      • 2023-01-31
      相关资源
      最近更新 更多