有什么方法可以查看DOM元素的事件附加了哪些函数/代码?使用Firebug或任何其他工具。
使用传统element.onclick= handler或HTML附加的事件处理程序<elementonclick="handler">可以element.onclick从脚本或调试器中的属性中轻松检索。
element.onclick= handler
<elementonclick="handler">
element.onclick
使用DOM Level 2事件addEventListener方法和IE 附加的事件处理程序attachEvent目前根本无法从脚本中检索。DOM Level3曾经提出element.eventListenerList要获得所有侦听器,但是目前尚不清楚这是否会符合最终规范。今天,任何浏览器都没有实现。
addEventListener
attachEvent
element.eventListenerList
作为浏览器扩展的调试工具 可以 访问这些类型的侦听器,但是我不知道实际上有任何侦听器。
一些JS框架留下了足够的事件绑定记录,以计算出它们所做的工作。VisualEvent采用这种方法来发现通过一些流行框架注册的侦听器。