2010-05-30 67 views
1

我有onload事件的问题。我的页面有4个iframe,onload事件中的函数被调用5次(一个用于body,另一个用于iframe)。我只需要1次(从主体)。尝试从Windows.event srcElement和目标属性,但没有结果...有没有办法停止onload加载iframe时?JS和Body(Window)Onload事件

代码:

<body onload="init()"> 

<div id="dialogs"> 

<div id="login"> 
     <FORM id="loginform" name="loginform" action="alogin.php" method="post" target="login_target">...</FORM> 
    <iframe id="login_target" name="login_target" src="#"></iframe> 
</div> 
... 
... 
</body> 

所有iframe在代码相同的代码是这样的。我尝试使用一个代码 http://dean.edwards.name/weblog/2005/09/busted/ 检查完成,但初始化函数被调用了五次再

+0

iframes是空的,我用它们为例如Ajax上传 – Ilian 2010-05-30 09:49:35

+0

你可以发布你的代码? – 2010-05-30 09:53:26

回答

1

你要检查,如果当前窗口是最顶层窗口,您可以通过对window.top检查发现:

function init() 
{ 
    if (this === window.top) 
    { 
     // This is the main body (not in an iframe) 
    } 
}