1.在A页面引入a.js和b.js;其中a.js和b.js都用了window.onload没有问题;但是我在B页面也引入a.js和c.js,偶尔a.js就跟完全没有执行一样但是我直接将a.js中的window.onload中的东西放入B页面的c.js的onload中,又正确执行了,不晓得是怎么回事??
1 回答

料青山看我应如是
TA贡献1772条经验 获得超8个赞
通过
window.onload = function() { ... }
方法设置的事件,后面的window.onload
值会覆盖掉前面的,所以,只有最后一次生效。(这个和调用a = 1; a = 2; a =3;
是一个道理)如果需要对
window
的onload
事件进行多次绑定,建议使用addEventListener
:
window.addEventListener('load', function() { ... }, false);
注意,ID中使用
attachEvent
而非addEventListener
:
window.attachEvent('onload', function() { ... });
另外注意,
addEventListener
中用的是'load'
,而attachEvent
中用的是'onload'
。
添加回答
举报
0/150
提交
取消