JQuery:如何查看元素上定义的事件?

And*_*sen 3 jquery events

我用

$(window).bind( ... )
Run Code Online (Sandbox Code Playgroud)

设置事件处理程序,但由于某种原因,我一直在丢失事件处理程序(我认为).在调试(firebug)时是否有任何方法可以查看哪些自定义事件已添加到给定元素?

你的安德烈亚斯

red*_*are 9

所有由jQuery绑定的事件(例如,不是内联事件)都可以通过.data访问

var $el = $('#someId');
var allEvents =  $.data( $el , "events" );
Run Code Online (Sandbox Code Playgroud)

要么

$('#someId').data('events');
Run Code Online (Sandbox Code Playgroud)

它非常罕见我将事件绑定到窗口对象,但同样的概念应该仍然适用所以尝试 $(window).data('events')

这确实在这里工作演示(写入控制台所以使用firefox + firebug)