2010-05-30 70 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) 
    } 
}