2010-03-26 105 views
3

我有一個頁面正在加載。

的裏面,我有一個函數,耐心等待頁面加載使用jQuery的這是應該要等到ALL網頁內容(圖片,JavaScript,CSS等)發射前裝$(window).load()事件。

該功能然後回撥到使用postMessage加載的頁面,以將中的內容的高度返回。

我測試了IE7,IE8,Firefox 2,Firefox 3,Opera和Chrome的功能,一切正常。當我嘗試在Safari中加載頁面時,該功能會在加載圖像之前重新調用它,從而給我錯誤的頁面高度。

有沒有人知道如何強制Safari等待圖像加載之前調用一個函數(在這種情況下jQuery解決方案是可取的)?

回答

5

檢查偏移力Safari瀏覽器是否完成加載/佈局輸出內容,它會阻止JavaScript,直到返回完成。你可以這樣使用它:

$(window).load(function() { 
    var block = document.body.offsetWidth; 
    //Rest of code... 
});