如何進行腳本載入優化
如果我們只是單純在 head 或 body 中引用腳本,由於是否會更改DOM是未知的, 所以腳本在下載執行的過程中會完全阻塞頁面的渲染。
若腳本在 head 或 body 中間,有很大可能會出現空白頁面,也無法進行使用者交互,使用者體驗很差。
即便是可以並行下載 javascript 文件,但這個下載過程中會影響圖片等資源的下載。
所以我們首先需要做的是:
把script 標籤放在body 裡最底部;
因為進行HTTP 請求時有額外的效能開銷,如三次握手,所以還要盡量減少 HTTP 請求:
把javascript 檔案合併成一個;
##在一個要求裡載入多個javascript 檔案
但是以上並沒有解決我們的問題,一個大的javascript 檔案會下載執行腳長時間,在這段時間裡,瀏覽器無法做其他事情。這就需要無阻塞腳本,也就是在頁面載入完成後才載入 javascript 程式碼,也就是在 window物件 的 load 事件觸發之後再下載腳本。 1 延遲腳本defer:首先我們要確定該腳本不會改變DOM,因為加上就是告訴瀏覽器這個腳本不會改變DOM,可以在頁面載入完成後再執行。 給 script 標籤加上這個屬性後,這個檔案就可以跟著其他資源並行下載了。IE 從IE10 開始不支援defer
async:與defer 差異在於下載完成後就執行,但defer 要等到頁面載入完成後才執行#2 動態腳本也就是動態創建一個script 標籤,在適當的時機插入到頁面中,我們可以這個方法來根據需要載入文件,也能指定腳本載入順序。以上是如何進行腳本載入優化的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

剪映是影片編輯工具,具有全面的剪輯功能,支援變速,有多元濾鏡和美顏的效果,還有豐富的曲庫資源。在這款軟體中,可以直接對影片進行剪輯,也可以建立剪輯腳本,但是該怎麼操作呢?本篇教學小編就來介紹一下剪映製作腳本的方法。 製作方法 1、在電腦中點選開啟剪映軟體,然後找到「創作腳本」選項,點選開啟。 2、在創作腳本頁面中,輸入“腳本標題”,然後在大綱中輸入拍攝內容的簡介。 3、如何在大綱中就能看到「分鏡描述」選項,在框內可以

如何在Linux系統中執行.sh檔?在Linux系統中,.sh文件是一種被稱為Shell腳本的文件,用於執行一系列的命令。執行.sh檔案是非常常見的操作,本文將介紹如何在Linux系統中執行.sh文件,並提供具體的程式碼範例。方法一:使用絕對路徑執行.sh文件要在Linux系統中執行一個.sh文件,可以使用絕對路徑來指定該文件的位置。以下是具體的步驟:打開終

我們為初學者設計了這份WindowsPowerShell腳本教程,無論您是技術愛好者還是希望提高腳本編寫技能的專業人士。如果你對PowerShell腳本沒有先驗知識,這篇文章將從基礎開始,為您量身訂做。我們將協助您掌握PowerShell環境的安裝步驟,並逐步介紹PowerShell腳本的主要概念和功能。如果您已經做好準備,準備深入學習PowerShell腳本編程,那麼讓我們一起踏上這趟令人興奮的學習之旅吧!什麼是WindowsPowerShell? PowerShell是由微軟開發的混合了命令

Laravel是一款廣受歡迎的PHP開發框架,但有時候被人詬病的就是其速度慢如蝸牛。究竟是什麼原因導致了Laravel的速度不盡人意呢?本文將從多個面向深入解讀Laravel速度慢如蝸牛的原因,並結合具體的程式碼範例,幫助讀者更深入地了解此問題。 1.ORM查詢效能問題在Laravel中,ORM(物件關係映射)是一個非常強大的功能,可以讓

Golang的垃圾回收(GC)一直是開發者關注的熱門話題。 Golang作為一門快速的程式語言,其自帶的垃圾回收器能夠很好地管理內存,但隨著程式規模的增大,有時會出現一些效能問題。本文將探討Golang的GC最佳化策略,並提供一些具體的程式碼範例。 Golang中的垃圾回收Golang的垃圾回收器採用的是基於並發標記-清除(concurrentmark-s

時間複雜度衡量演算法執行時間與輸入規模的關係。降低C++程式時間複雜度的技巧包括:選擇合適的容器(如vector、list)以最佳化資料儲存和管理。利用高效演算法(如快速排序)以減少計算時間。消除多重運算以減少重複計算。利用條件分支以避免不必要的計算。透過使用更快的演算法(如二分搜尋)來優化線性搜尋。

解碼Laravel效能瓶頸:優化技巧全面揭秘! Laravel作為一個受歡迎的PHP框架,為開發者提供了豐富的功能和便利的開發體驗。然而,隨著專案規模增加和訪問量增加,我們可能會面臨效能瓶頸的挑戰。本文將深入探討Laravel效能最佳化的技巧,幫助開發者發現並解決潛在的效能問題。一、資料庫查詢優化使用Eloquent延遲載入在使用Eloquent查詢資料庫時,避免

Laravel效能瓶頸揭秘:優化方案大揭秘!隨著網路技術的發展,網站和應用程式的效能優化變得愈發重要。作為一款流行的PHP框架,Laravel在開發過程中可能會面臨效能瓶頸。本文將探討Laravel應用程式可能遇到的效能問題,並提供一些最佳化方案和具體的程式碼範例,讓開發者能夠更好地解決這些問題。一、資料庫查詢最佳化資料庫查詢是Web應用中常見的效能瓶頸之一。在
