Javascript 调整大小事件错误

问题描述 投票:0回答:2

我不知道为什么这不起作用:

window.addEventListener('load', setSize(), false);
window.addEventListener('resize', setSize(), false);

function setSize(){
    width = window.innerWidth;
    console.log(width);
}

它会在加载后立即记录宽度,但当我调整大小时它不会这样做。

javascript html resize dom-events
2个回答
32
投票

而不是执行函数(并传递结果):

window.addEventListener('load', setSize(), false);
window.addEventListener('resize', setSize(), false);

您应该传递对该函数的引用:

window.addEventListener('load', setSize, false);
window.addEventListener('resize', setSize, false);

该函数将在事件监听器触发时执行。


0
投票

如果我有 setSize 函数的一些参数(例如 setSize(a,b))怎么办?

© www.soinside.com 2019 - 2024. All rights reserved.