window.document.addEventListener vs window.addEventListener

时间:2015-10-13 18:46:48

标签: javascript dom

window.document.addEventListener = function(event) {...}

window.addEventListener = function(event) {...}

这两行代码有什么区别?我得到那个窗口,文档对象是两个具有不同属性的不同对象,this site为差异提供了良好的视觉指导。我仍然没有看到这两行代码之间的区别。

进一步澄清:做这样的事情有什么不同: window.addEventListener('mousemove', function (event) {...}); 并做这样的事情window.document.addEventListener('mousemove', function (event) {...});

1 个答案:

答案 0 :(得分:2)

大多数DOM对象以及addEventListener本身都有window种方法。事件在事件开始的元素及其祖先上冒泡并触发事件侦听器。

这两段代码在不同级别上覆盖 addEventListener

如果您要调用原始方法,则很少(如果有的话)使您调用它们中的哪些对象产生任何差异。如果你要进行比较会有所不同,例如:

window.addEventListener('click', handler);
document.querySelector('button', handler);

因为一个人会捕获文档中的所有点击,另一个人只会捕获第一个按钮元素上的那些点击。