2012-03-23 20 views
1

我只是想知道是否有任何性能問題或任何錯誤的東西,如果$(window).load(),設置在$(document).ready()會有一個問題,讓window.load在'document.ready'內'

由於某些元素只能確定加載窗口後,如內聯div或圖像的動態大小,高度:auto,而函數的80%應該開始在document.ready上工作。

回答

1

沒有問題。

[報價]這工作正常並且是一種可以接受的做法。畢竟,正如你所描述的,可能會出現這樣的情況:$(window).load()處理程序中的邏輯取決於DOM準備就緒後發生的工作。如果窗口實際上在您設置$(window).load()時已經加載,那麼處理程序將立即觸發。 [引文結束]

「$(文件)。就緒()一旦DOM加載運行,但$(窗口).load()將不會運行,直到DOM加載和所有DOM資源已加載(如圖像和CSS文件和東西),這意味着$(document).ready()將在您設置該值之前運行。「在這裏閱讀更多

window load inside a document ready?

希望這有助於你的理解,你總是可以在jQuery的單證閱讀更多。

喝彩!

+0

我看,但我現在面臨一個問題,功能承載,3個部分,第一兩個部分不需要window.load變量,但最後一樣。它看起來好像不會解析,我可能不得不把它分成兩部分。 – devric 2012-03-23 12:21:39

+0

hiya,okies;如果你可以給jsfiddle,我們可以幫你進一步,但似乎你已經有了更好的想法。希望這個插件,如果你的,(如你提到的分裂即重構或切片你的代碼一半)歡呼。 – 2012-03-23 12:25:08

0

不,沒有問題。

你只是分配一個事件處理的事件,這當然會DOMContentLoaded火災後一段時間。

相關問題