如何通过JavaScript将事件监听器添加到body元素?

时间:2015-04-10 16:42:45

标签: javascript dom

如何通过JavaScript将onload事件监听器添加到HTML文档中的<body>元素(或其他一些合适的近顶级元素)?

我希望实现与此相同的行为:

<body onresize="handleResize();">
   ...
</body>

(即,当页面调整大小时,该函数应该运行)

但我想用这样的

添加事件监听器
(function() {
  //effectively private because it's in the closure
  function handleResize() {
    //do stuff here
  }
  element.addEventListener("resize",handleResize);
})(); //IIFE

我遇到的问题是,我不知道如何抓住相应的元素来附加事件。

我试过了:

document.documentElement.addEventListener("resize",handleResize);

而且:

document.body.addEventListener("resize",handleResize);

但在这两种情况下,都不会调用handleResize函数。

如何访问相应的顶级或近顶级元素?

1 个答案:

答案 0 :(得分:4)

使用窗口元素。

window.addEventListener("resize",handleResize,0);