繁体   English   中英

jQuery + DevTools:如何快速将事件处理程序附加到元素

[英]jQuery + DevTools: how can I quickly get the event handler(s) attached to the element

我问这个问题是因为我目前正在研究的项目中有四万多行非结构化jQuery代码。 即使在此代码库中最聪明的搜索也无法回答最简单的问题,例如

“如果我单击此红色按钮会怎样?”

这意味着它无法指向混乱代码中设置的事件处理程序。

在代码库中搜索选择器对我没有帮助,我得到300多个搜索结果。

我知道DevTools中有' Event Listeners '选项卡,但它指向jQuery代码中的一行,因此我完全没有使用它至少我不知道如何使用 )。

可能有一个好的解决方案-在DevTools中按下暂停键,因此,如果单击该红色按钮,DevTools会跳至当前执行的代码行(jQuery事件处理程序),并且在经过一些痛苦的迭代之后,您可以将处理程序挖出jQuery库)。 但是有人用setInterval(... , 100)mouseover添加了很多横幅,这使我没有机会在这里使用此技巧...

(也许有一种方法可以从jQuery的深层获取事件处理程序数组?)

所以,我需要在

$('#my.red button')。click(function(){/ * bla * /});

我相信应该有一次营救,朋友。

我需要一种非常省时的方法/技术,因为我每天需要执行数百次此搜索。

PS:如果使用$.live设置处理程序,该怎么办?

Firebug 2.0在其HTML面板中具有一个“ 事件”侧面板 ,如果启用了“ 显示包装的侦听器 ”选项,则它可以显示用户定义的功能。

显示包裹的监听器选项

包装的功能以箭头开头。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM