window.document.addEventListener 与 window.addEventListener

isa*_*c9A 5 javascript dom

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

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

这两行代码有什么区别?我知道 window 和 document 对象是两个不同的对象,具有不同的属性,这个站点为差异提供了一个很好的视觉指南。我仍然没有看到这两行代码在做什么之间的区别。

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

Que*_*tin 3

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

那里的两段代码在不同级别上覆盖了addEventListener

如果您要调用原始方法,则很少(如果有的话)会对您在哪些对象上调用它产生任何影响。如果您进行比较,就会有所不同,例如:

window.addEventListener('click', handler);
document.querySelector('button', handler);
Run Code Online (Sandbox Code Playgroud)

因为一个将捕获文档中的所有点击,而另一个将仅捕获第一个按钮元素上的点击。

  • `window.document` 和 `document` 之间没有区别。 (2认同)