首页 新闻 搜索 专区 学院

document.body.onload覆盖window.onload的问题

0
悬赏园豆:100 [已关闭问题]

当同时给body元素和window附加事件处理程序时,body元素总是会覆盖window事件处理程序,使其不会执行,请问高手,该如何才能使其不被覆盖,而且两者都可以执行,在急迫的心情中等待您的解答........

问题补充: @小眼睛老鼠 不可能,两者不可能先后执行,body的会覆盖window的,请你运行下代码再来回答,谢谢。 @右手年华 你只是运行了alert函数,但是你给window.onload附加一个函数时,body的onload事件处理程序将会覆盖掉前者,不信你可以试一下,如果问题真如二位所说,如此简单的话,我也不会在此提问了。
Jillean Wong的主页 Jillean Wong | 初学一级 | 园豆:75
提问于:2008-09-30 19:34
< >
分享
其他回答(2)
0

事件的机制好像是先大后小

但是每个都会执行

如果是覆盖的话

只能说明你的程序的逻辑有问题

这个已经不是事件的问题了

你可以试试在window的onload里面写个alert

然后再body的onload里写个alert

你会发现这2个都会执行

而先执行window的alert(先执行外层的)

然后再执行document的alert(其实这2个都是执行了的不算覆盖的)

小眼睛老鼠 | 园豆:2774 (老鸟四级) | 2008-09-30 20:31
0

楼上正解.
IE触发的是冒泡型事件
查了半天我也不知道window的onload是怎么触发的索性就用了javascript了
以下是代码
<html>
<head>
<title> document.body.onload覆盖window.onload的问题 -

博问 - 博客园社区 </title>
<script language=JavaScript>window.onlad=alert

("windows")</script>
</head>
<body onload=alert("body")>
</body>
</html>

小也 | 园豆:75 (初学一级) | 2008-10-01 01:54
0

同求问题答案

nx288882 | 园豆:202 (菜鸟二级) | 2012-12-01 14:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册