Javascript 为什么body.addEventListener(';scroll';)不';body.onscroll在工作时不能工作

Javascript 为什么body.addEventListener(';scroll';)不';body.onscroll在工作时不能工作,javascript,dom,Javascript,Dom,我刚刚遇到了一些有趣的行为: document.body.addEventListener('scroll', f) document.body.onscroll = f; 当滚动正文时,回调在第一种情况下不会触发,在第二种情况下工作正常。有人知道原因吗 我首先假设事件是在文档上生成的,但是不应该触发body.onscroll 这里讨论的是plunker.: 你可以用另一种方式: document.addEventListener("scroll", f); 这并没有回答我的问题,我发现on

我刚刚遇到了一些有趣的行为:

document.body.addEventListener('scroll', f)
document.body.onscroll = f;
当滚动正文时,回调在第一种情况下不会触发,在第二种情况下工作正常。有人知道原因吗

我首先假设事件是在文档上生成的,但是不应该触发
body.onscroll

这里讨论的是plunker.

你可以用另一种方式:

document.addEventListener("scroll", f);

这并没有回答我的问题,我发现onfocus和onblur有同样的行为。我认为这是为了保持兼容性:早上好你能提供一个可运行的问题报告吗?@yurzui,easy:),检查你是否在没有iframes的空白页面上尝试过它?@yurzui,是的,当然,你可以将内容粘贴到
index.html
中,并在没有iframes的情况下运行它非常有趣的事情