2009-08-05 66 views
7

我看到人們一直在使用「window.onload」,但爲什麼? 「窗口」部分不是完全多餘的?JavaScript「window.onload」 - 是否真的需要「窗口」?

+0

取決於PN您的環境中工作。 – EFraim 2009-08-05 20:48:19

+0

我應該說明我在窗口範圍內。在窗口範圍內,是不是就像使用window.document或窗口點什麼一樣多餘? – jedmao 2009-08-05 21:02:11

+1

@sfjedi - 這是不值得的風險和不清晰。 – 2009-08-05 21:04:44

回答

8

如果你不這樣做,那麼onload方法將歸因於當前對象,無論是(如果有的話)。所以有時候它可能會起作用,但是編寫window.onload是最明確,最具體和最安全的方式。

+2

對。 「onload」並非專門用於窗口對象。它也可以用於圖像和其他對象。因此,應始終指定窗口。 – DLH 2009-08-05 20:56:27

+3

JavaScript沒有暗示這一點,所以如果它是一個局部變量或者你在「with([某個帶有onload屬性的對象])塊中,它只會與另一個onload變量發生衝突。 – 2009-08-06 02:52:36

0

link text 「加載事件在文檔加載過程結束時觸發,此時文檔中的所有對象都在DOM中,並且所有圖像和子框架都已完成加載。

需要先從整個DOM

0
<script type="text/javascript">  
    if(window.addEventListener){ 
     window.addhandler= function(who, which, what){ 
      return who.addEventListener(which, what, false); 
     } 
    } 
    else if(window.attachEvent){ 
     window.addhandler= function(who, which, what){ 
      return who.addEventListener('on'+which, what); 
     } 
    }   
    function somefunction(){ 
     alert('page loaded') 
    }  
    addhandler(window,'load',somefunction);  
</script> 
相關問題