JavaScript中window.onresize事件不生效问题求助
问题分析与修复方案
你的代码存在三个关键问题,导致resize事件无法正常触发更新:
- 事件绑定方式错误:你写的
window.onresize = GetWidth();会立即执行GetWidth函数,并将返回值(这里是undefined)赋值给onresize事件,而非把函数本身绑定到事件触发时执行。同理window.onload的写法也有同样问题,只是刚好初始化时执行了一次,逻辑并不正确。正确写法是去掉括号,只传递函数引用。 - 拼写错误:
windows.innerWidth里多了一个s,正确的全局对象是window,所以应该写成window.innerWidth。 - HTML标签闭合问题:你的HTML中
<h3>标签没有闭合,虽然浏览器可能容错,但建议补上闭合标签保证代码规范。
修正后的完整代码
JavaScript代码
window.onresize = GetWidth; window.onload = GetWidth; function GetWidth(){ document.querySelector("screenWidth").textContent = window.innerWidth; }
HTML代码
<h1>Current Window size</h1> <h3>Size is:<screenWidth>whatever</screenWidth></h3>
内容的提问来源于stack exchange,提问作者Barbara Clarke
相关产品推荐
相关产品推荐

