新聞中心
您是否通過性能測試工具運(yùn)行您的wordpress網(wǎng)站,卻遇到了延遲在WordPress中解析JavaScript的指令?

堅(jiān)守“ 做人真誠 · 做事靠譜 · 口碑至上 · 高效敬業(yè) ”的價(jià)值觀,專業(yè)網(wǎng)站建設(shè)服務(wù)10余年為成都咖啡廳設(shè)計(jì)小微創(chuàng)業(yè)公司專業(yè)提供成都定制網(wǎng)頁設(shè)計(jì)營銷網(wǎng)站建設(shè)商城網(wǎng)站建設(shè)手機(jī)網(wǎng)站建設(shè)小程序網(wǎng)站建設(shè)網(wǎng)站改版,從內(nèi)容策劃、視覺設(shè)計(jì)、底層架構(gòu)、網(wǎng)頁布局、功能開發(fā)迭代于一體的高端網(wǎng)站建設(shè)服務(wù)。
實(shí)施此更改可以對(duì)您網(wǎng)站的頁面加載時(shí)間產(chǎn)生積極影響,尤其是對(duì)于移動(dòng)訪問者。但是警告可能有點(diǎn)難以理解,這就是為什么我們要準(zhǔn)確解釋延遲解析JavaScript的含義以及如何在WordPress網(wǎng)站上實(shí)現(xiàn)此更改。
以下是您將在本文中學(xué)到的內(nèi)容:
如果您只想直接跳到教程,可以單擊上面列表中的最后一個(gè)鏈接。
在WordPress中延遲解析JavaScript意味著什么?
如果您曾經(jīng)通過Google PageSpeed Insights、GTmetrix或其他頁面速度測試工具運(yùn)行過您的WordPress網(wǎng)站,您可能會(huì)遇到過延遲解析JavaScript的建議。
但是……這實(shí)際上是什么意思?為什么它是一個(gè)重要的性能考慮因素?
基本上,當(dāng)有人訪問您的WordPress網(wǎng)站時(shí),您網(wǎng)站的服務(wù)器會(huì)將您網(wǎng)站的HTML內(nèi)容傳送到該訪問者的瀏覽器。
然后訪問者的瀏覽器從頂部開始,并通過代碼呈現(xiàn)您的網(wǎng)站。如果在從上到下的移動(dòng)過程中找到任何JavaScript,它將停止呈現(xiàn)頁面的其余部分,直到它可以獲取并解析JavaScript文件。
它會(huì)對(duì)找到的每個(gè)腳本執(zhí)行此操作,這可能會(huì)對(duì)您網(wǎng)站的頁面加載時(shí)間產(chǎn)生負(fù)面影響,因?yàn)樵L問者需要在瀏覽器下載和解析所有JavaScript時(shí)盯著空白屏幕。
如果您網(wǎng)站的核心功能不需要某個(gè)腳本(至少在初始頁面加載時(shí)),您不希望它妨礙加載網(wǎng)站更重要的部分,這就是為什么這些頁面速度測試工具總是告訴你推遲對(duì)JavaScript的解析。
那么延遲解析JavaScript是什么意思呢?
本質(zhì)上,您的網(wǎng)站會(huì)告訴訪問者的瀏覽器等待下載和/或解析JavaScript,直到您網(wǎng)站的主要內(nèi)容已經(jīng)完成加載。此時(shí),訪問者已經(jīng)可以看到您的頁面并與之交互,因此下載和解析該JavaScript的等待時(shí)間不再具有如此負(fù)面的影響。
通過加快內(nèi)容的首屏加載時(shí)間,您可以讓Google感到高興,并為您的訪問者創(chuàng)造更好、更快的體驗(yàn)。
如何判斷是否需要延遲解析JavaScript
要測試您的WordPress站點(diǎn)是否需要延遲解析JavaScript,您可以通過GTmetrix運(yùn)行您的站點(diǎn)。
GTmetrix會(huì)給你打分,還會(huì)列出需要推遲的特定腳本:
在GTmetrix中延遲解析JavaScript測試
延遲解析JavaScript的不同方法
有幾種不同的方法可以延遲JavaScript的解析。首先,您可以將兩個(gè)屬性添加到腳本中:
這兩個(gè)屬性都允許訪問者的瀏覽器在不暫停HTML解析的情況下下載JavaScript。但是,不同之處在于,雖然async不會(huì)暫停HTML解析以獲取腳本(如默認(rèn)行為那樣),但它會(huì)暫停HTML解析器以在獲取腳本后執(zhí)行腳本。
使用defer,訪問者的瀏覽器在解析HTML時(shí)仍然會(huì)下載腳本,但他們會(huì)等待解析腳本,直到HTML解析完成。
與Web一起成長的這張圖表很好地解釋了這種差異:
圖形解釋異步與延遲
Varvy的Patrick Sexton推薦的另一種選擇是,僅在初始頁面加載完成后才使用腳本調(diào)用外部JavaScript文件。這意味著在初始頁面加載完成之前,訪問者的瀏覽器不會(huì)下載或執(zhí)行任何JavaScript。
最后,您將看到的另一種方法是將JavaScript移動(dòng)到頁面底部。但是,這種方法并不是一個(gè)很好的解決方案,因?yàn)榧词鼓捻撁鎸⒑芸炜梢?,訪問者的瀏覽器仍會(huì)將頁面顯示為正在加載,直到所有腳本完成。這可能會(huì)阻止一些訪問者與您的頁面進(jìn)行交互,因?yàn)樗麄冋J(rèn)為內(nèi)容沒有完全加載。
如何在WordPress中延遲JavaScript解析(4 種方法)
要在WordPress中延遲JavaScript的解析,您可以采取三種主要途徑:
- 插件——有一些很棒的免費(fèi)和高級(jí)WordPress插件可以推遲JavaScript解析。我們將向您展示如何使用兩個(gè)流行的插件來做到這一點(diǎn)。
- Varvy方法——如果您精通技術(shù),您可以直接編輯您網(wǎng)站的代碼并使用Varvy的代碼片段。
- Functions.php文件——您可以將代碼片段添加到子主題的functions.php文件中以自動(dòng)延遲腳本。
您可以單擊上方直接跳轉(zhuǎn)到您喜歡的方法或通讀所有技術(shù)以找到最適合您的方法。
1. 免費(fèi)的異步JavaScript插件
Async JavaScript是來自Frank Goossens的免費(fèi)WordPress插件,他是流行的Autoptimize插件背后的同一個(gè)人。
它為您提供了一種使用異步或延遲延遲解析JavaScript的簡單方法。
首先,您可以從WordPress.org安裝并激活免費(fèi)插件。然后,轉(zhuǎn)到設(shè)置 → Async JavaScript以配置插件。
在頂部,您可以啟用插件的功能并在異步和延遲之間進(jìn)行選擇。記?。?/p>
- Async下載JavaScript,同時(shí)仍解析HTML ,但隨后暫停HTML解析以執(zhí)行 JavaScript。
- Defer在仍然解析HTML的同時(shí)下載JavaScript并等待執(zhí)行它,直到HTML解析完成。
如何使用異步JavaScript插件
再往下,你還可以選擇如何處理jQuery。許多主題和插件嚴(yán)重依賴jQuery,因此如果您嘗試推遲解析jQuery腳本,您可能會(huì)破壞您網(wǎng)站的一些核心功能。最安全的方法是排除jQuery,但您可以嘗試推遲它。只要確保徹底測試您的網(wǎng)站。
再往下,您還可以手動(dòng)包含或排除特定的腳本被延遲,包括一個(gè)很好的用戶友好功能,讓您可以定位在您的網(wǎng)站上活躍的特定主題或插件:
異步JavaScript包含/排除規(guī)則
2.使用WP Rocket插件
除了一堆其他性能優(yōu)化技術(shù)外,WP Rocket還可以幫助您在WP Rocket儀表盤的“File Optimization”選項(xiàng)卡中延遲JavaScript的解析。在JavaScript Files部分中查找Load JavaScript deferred選項(xiàng)。
與Async JavaScript插件一樣,WP Rocket還允許您排除jQuery以避免網(wǎng)站內(nèi)容出現(xiàn)問題:
如何使用WP Rocket延遲解析JavaScript
3. 使用Varvy推薦的方法(代碼)
早些時(shí)候,我們提到Varvy的Patrick Sexton建議使用一個(gè)代碼片段,該代碼片段會(huì)等待下載和執(zhí)行JavaScript,直到您的網(wǎng)站完成初始頁面加載。
您可以通過調(diào)整Varvy提供的代碼片段,然后將腳本添加到您的主題中,緊接在結(jié)束


咨詢
建站咨詢
