jQuery如何知道任何DOM事件发生的时间?
$('body').on('click', function(e) {
alert('working');
});
document.body.onclick; // null
我过分依赖这个库。有人能告诉我它是什么时候点击了身体的吗?
答案 0 :(得分:3)
jQuery(感谢上帝)不使用DOM元素的onclick
属性或属性,而是使用addEventlistener
或IE- attachEvent
答案 1 :(得分:3)
.on
换行jQuery.event.add
(如果查看2688行的jQuery源代码)。
这会尝试使用事件类型的缓存版本,但如果没有,它最终会归结为调用特定于浏览器的函数来附加事件(在第2767行附近)。
if ( elem.addEventListener ) {
elem.addEventListener( type, eventHandle, false );
} else if ( elem.attachEvent ) {
elem.attachEvent( "on" + type, eventHandle );
}
对于这两种情况,它似乎没有回退,因此永远不会写入on*
属性。因此,如果您使用elem.onclick
jQuery.on
将为空