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

Javascript jQuery+;DevTools:如何快速将事件处理程序附加到元素,javascript,jquery,firebug,google-chrome-devtools,firebug-lite,Javascript,Jquery,Firebug,Google Chrome Devtools,Firebug Lite,我问这个问题是因为在我目前正在进行的项目中,有超过40K行的非结构化jQuery代码。即使在这个代码库上进行最智能的搜索也无法回答最简单的问题,如 “如果单击此红色按钮会发生什么情况?” 这意味着它不能将我指向混乱代码中设置的事件处理程序 在代码库中搜索选择器对我没有帮助,我得到了300多个搜索结果 我知道DevTools中有“”选项卡,但它指向jQuery代码中的一行,所以我完全没有使用它(至少我不知道如何使用) 对于这一点,可能有一个很好的解决方案——在DevTools中按pause,因此如

我问这个问题是因为在我目前正在进行的项目中,有超过40K行的非结构化jQuery代码。即使在这个代码库上进行最智能的搜索也无法回答最简单的问题,如

“如果单击此红色按钮会发生什么情况?”

这意味着它不能将我指向混乱代码中设置的事件处理程序

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

我知道DevTools中有“”选项卡,但它指向jQuery代码中的一行,所以我完全没有使用它(至少我不知道如何使用)

对于这一点,可能有一个很好的解决方案——在DevTools中按pause,因此如果您单击该红色按钮,DevTools将跳转到当前执行的代码行(jQuery事件处理程序),您可以在经过一些痛苦的jQuery库迭代后将处理程序挖掘出来。但是有人添加了很多带有
setInterval(…,100)
mouseover
s的横幅,让我没有机会在这里使用这个技巧

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

所以,我需要找到函数集

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

朋友们,我相信应该有人来营救

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

PS:如果处理程序是使用
$.live

设置的,那么在启用了show Wrapped Listeners选项的情况下,它可以显示用户定义的函数


包装好的函数前面有一个箭头。

1)我对你深表同情。2) 当调用堆栈在jQuery行停止时,您是否尝试过检查它?它不是100%,堆栈可能长得离谱,或者指向“外部代码”3)最后,我只是在搜索中找到了这个,但我自己没有使用它:1)@JasonM.Batchelor,非常感谢您的链接!2) 调用堆栈没有帮助,因为a)由于设置了多个
setInterval
s和
onmouseover
s,我既不能暂停Javascript,也不能在jQuery的事件引擎中设置断点。b) 当任何事件处理程序触发时,调用堆栈只有一级深度。我需要的是深入到库中,获取连接到该特定事件上运行的回调数组。PS:看起来jQuery已经变成了一个只写库(对于那些记得Perl的人来说):。这个特性的可能重复是一个救命稻草!