【问题标题】:Event Listeners in Chrome with Jquery带有 Jquery 的 Chrome 中的事件监听器
【发布时间】:2013-12-20 10:26:45
【问题描述】:

我正在使用“事件侦听器”来检查附加到我的 DOM 对象的事件。但是,当使用 jQuery 附加事件时,我看到的只是 jquery-1.8.3.min.js,有没有办法解决这个问题?

【问题讨论】:

    标签: jquery debugging google-chrome


    【解决方案1】:

    在开发者工具设置中的框架黑盒中添加 jQuery 和 Chrome 扩展。

    Chrome Developer Tools > Settings (F1) > General > Manage framework blackboxing...

    选中 Blackbox content scripts 以禁用 Chrome 扩展上的断点,并将 /.*jquery.*\.js$ 添加到应该被黑盒化的 URI 模式中。

    现在在开发者工具的Sources 选项卡中打开右侧的Event Listener Breakpoints 列表,并选中您要在其中中断脚本的事件,这将停止在您编写的要附加的脚本上执行脚本使用 jQuery 的事件。

    另一种对库进行黑盒化的快速方法是在Sources 选项卡中的Call Stack 中右键单击其名称。当您添加事件侦听器断点时,它将显示出来。

    【讨论】:

      【解决方案2】:

      当您使用 jQuery 附加事件处理程序时,jQuery 函数就是实际附加为事件处理程序的函数(然后在事件发生时它会调用您的事件处理程序函数)。所以,如果你查看一个通用调试器,这就是它要告诉你的,这就是你所看到的。

      对于调试器,jQuery 只是 javascript,它向您展示了 javascript 附加了事件处理程序的内容。对于 jQuery 事件处理程序,无法让调试器向您显示不同的内容。

      jQuery 库本身具有以编程方式查询哪些 jQuery 事件处理程序附加到给定对象的方法。如何做到这一点因 jQuery 版本而异,但您通常可以在这里看到它是如何工作的:Can I find events bound on an element with jQuery?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-30
        • 2010-10-23
        • 2020-09-20
        • 1970-01-01
        • 1970-01-01
        • 2011-07-03
        相关资源
        最近更新 更多