將事物作爲div的高度或各種css規則操作時,文檔完全加載是件好事。那麼爲什麼不在操縱dom中的對象時總是使用(window).load而不是(document).ready?window.load使用jQuery進行所有dom操作?
回答
因爲「準備好文檔」要早得多。它表示DOM已經加載並準備好進行操作。另一方面,「窗口負載」還包括圖像,視頻和可能的閃存元素 - 所有可能需要很長時間才能加載的元素(尤其是Flash,除非它具有合適的預加載器),並且您會必須等到你的頁面做任何事情之前,即使沒有理由。
好點,但是爲了改變高度,讓我們說根據它們的高度window.load的div中的圖像。 –
不是。一旦圖像開始下載,圖像就會暴露出它們的「寬度」和「高度」屬性,這在window.onload被觸發之前可能會持續幾秒鐘。 –
我有一個我現在正在處理的博客,並且側邊欄需要伸展到與主要博客文章具有相同的高度。我使用jQuery來做到這一點,如果我正在做(文檔).ready,我有時會得到正確的結果,而其他時候我會得到完全錯誤的結果。如果我在(窗口).load內部執行它,我總會得到正確的結果。 –
這當然取決於你的需求。
假設您的網站有很多圖片,但您需要某些事件需要在文檔準備就緒後立即觸發,然後使用$(window).load(//您的事件)將等待所有首先加載圖像,然後觸發事件。 在這種情況下,最好使用$(document).ready(//你的事件)。
您可以按照在這裏這個問題,
What is the difference between $(window).load and $(document).ready?
因爲你今天可以做什麼,你不要等待明天。在Dom準備好之後立即啓動文件,因爲窗口加載等待所有資源下載。
- 1. 在window.load上操縱DOM的jQuery代碼並不總是運行
- 2. 使用document.getElementsByTagName進行DOM操作
- 3. 使用PhantomJS進行DOM操作
- 4. jQuery DOM操作
- 5. 對DOM元素使用'。'進行Jquery操作在ID中沒有效果
- 6. 使用jQuery進行HTML表格操作
- 7. 使用JQuery進行窗口操作?
- 8. 使用jquery UI進行拖放操作
- 9. 像使用AngularJS的JQuery的DOM操作?
- 10. Jquery的window.load不工作
- 11. XHTML DOM操作與jQuery
- 12. React和jQuery DOM操作
- 13. PHP,Jquery和DOM操作
- 14. getElementById在IE9中調用jquery document.ready和window.load之後不在DOM中+
- 15. 如何通過所有控件進行操作並對某些操作進行操作?
- 16. 使用現有大型DOM的DOM操作
- 17. 引用DOM操作
- 18. 用AngularJS操作dom
- 19. DOM操作不起作用
- 20. 如何使用jquery用戶界面進行拖放操作
- 21. 用戶使用FOSUserBundle進行操作?
- 22. jQuery將字符串用作DOM操作的jQuery對象
- 23. 使用jquery應用Dom操作後保存更改
- 24. PHP DOM操作有什麼用?
- 25. DOM操作
- 26. Extjs dom操作
- 27. PHP中的DOM DOM操作
- 28. window.load函數不起作用
- 29. jQuery:執行document.ready()和window.load()函數
- 30. Dom操縱。所有更改一次
'將事物作爲div的高度或者各種css規則操作時,文檔完全加載是一件好事情。「並不是真的,事實上你最好使用文檔準備好。但可以肯定的是,這取決於你在尋找什麼 –