javascript onload事件为什么会被覆盖而只执行最后一行的window.load

2024-12-19 18:10:09
推荐回答(3个)
回答1:

你放在window.onload里面是指页面加载完后执行,
如果没放在里面,你的第一种情况,根本没有Dom seat1节点
document.getElementById("seat1")没有,
如果不想放在onload里面,你可以把document.getElementById("seat1").onclick=function(i){jingbao(i);};
放在最下面,紧挨着,这样能执行。
注意添加事件有兼容性问题,Onload也有时候不能全部载完的。

回答2:

如果你写在了文档最开始,因为

document.getElementById("seat1").onclick=function(i){jingbao(i);};

上面这句你没有写在方法内,那么页面在打开的时候就会执行这一步,而此时页面还没有seat1元素,seat1元素在之后.因此也就没有给onclick事件添加对应的方法.你点击的时候自然没反应啦,你用你的浏览器F12debug一下就可以清楚的看到出错在哪里了

回答3:

一个页面只有一个 onload事件