$(document).ready() 也 CSS Ready 了嗎?
身為程式設計師,你無疑會使用 $(document)。 read() 事件啟動在頁面載入時操作 DOM 的腳本。但是,在某些情況下,您可能會遇到意外行為,例如元素對齊滯後或計算不正確。這是因為 $(document).ready() 不能保證與外部 CSS 檔案的完全載入同步。
CSS 注入和 $(document).ready()
根據 jQuery 文檔,外部 CSS 文件應該位於利用 read() 函數的腳本之前。這可確保在 jQuery 執行開始之前充分定義元素屬性。如果不遵守這一點,可能會出現偶發性問題,尤其是在 WebKit 瀏覽器中。
瀏覽器行為:CSS 載入和 JS 執行
儘管 CSS 是非同步載入的,但您可能預期 JS 執行將在 CSS 完成之前開始和結束。然而,經驗測試表明,在特定的瀏覽器中,例如 Internet Explorer,有時 JS 執行會延遲到 CSS 載入之後。儘管瀑布表明 JS 加載先於 CSS 下載。
CSS 放置和執行時機
將外部 CSS 放置在所有 JS 腳本下方可以加速準備好的執行() 功能。然而,測試表明這種方法並不能始終保證 JS 延遲執行直到 CSS 完全載入。這種行為似乎取決於是否使用外部 CSS 和 JS。
結論
雖然謹慎地遵循jQuery 文件的建議並在之前包含CSS對於JS 腳本,了解圍繞CSS 加載和JS 執行的細微瀏覽器行為至關重要。透過了解這些複雜性,您可以主動解決潛在問題並優化腳本,以實現可靠、高效的執行。
以上是$(document).ready() 是否確保 CSS 完全載入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!