2009-10-28 77 views
62

我剛剛爲Mozilla Firefox使用插件「Yslow」,它告訴我應該把JavaScript放在最下面。我以前聽說過這個,但沒有真正想過太多。將JavaScript放在網頁底部與頂部相比真的有優勢嗎?網頁底部/頂部的JavaScript?

+2

你可以直接找到這個源代碼...... http://developer.yahoo.com/performance/rules.html是雅虎對這種做法的解釋。 – 2009-10-28 17:18:07

+0

如果Javascript在一個單獨的文件中呢?我更喜歡這種方式,只是因爲它更容易調試/讀取。這是加載速度更快/更慢嗎? – 2009-10-28 17:14:08

+1

這些雅虎表現規則仍然是最新的?我必須想象有人發佈了一套類似的完整規則(或者雅虎可能已經發布了更新),其中考慮到了過去四年發生的變化。 – kralco626 2013-09-06 20:03:24

回答

47

它會允許網頁在執行JavaScript之前加載明顯,這對Google Analytics等事情有意義,在頁面加載之前不需要發生這種情況。

您可能還想研究諸如jQuery,原型等的東西,並附加到「ready」處理程序,該處理程序在DOM完全加載後執行JavaScript代碼,這是適用於大量JavaScript代碼的適當位置。

+0

這是否意味着通常在標籤內的JavaScript可以在標籤之後的頁面中的任何位置? – user 2009-10-28 17:14:48

+1

是的,

2

是的,頁面將加載內容並在加載和執行javascript之前呈現它,因此頁面加載速度會更快。

42

假設您沒有在CDN上運行,或者沒有從單獨的子域或服務器提供您的JS,它將同步加載並強制您的HTML內容等待,直到其下載文件。通過在關閉</body>標籤之前將JS放在頁面底部,您可以在加載javascript之前解析HTML。 這會產生更快頁面加載時間的效果。

4

如果您有靜態的html內容和大量的javascript,它可以使感知頁面加載時間有所不同,因爲html會首先加載給用戶看的東西。如果你沒有太多的JavaScript,或者現有的頁面內容依賴於JavaScript來發揮作用,那麼這實際上並沒有那麼有用。

4

我想爲此主題帶來更新,谷歌最近引入了異步剪輯http://support.google.com/analytics/bin/answer.py?hl=en&answer=1008080&rd=1,可以爲您的網站添加它,谷歌統計支持。它應該放置在<head>部分的底部以獲得最佳性能。重點是,這會增加跟蹤信標在用戶離開頁面之前發送的可能性。

此外,它應該位於那裏,如果你想驗證您的網站在谷歌網站管理員工具使用您的谷歌分析。

除此之外,同樣的規則基本上仍然適用 - 底部的JavaScript用於「快速」加載頁面。我用引號,因爲我不計數頁面完全加載,直到JavaScript完成;-)

0

它允許所有的DOM元素完全加載之前加載的Javascript解決它們。該標準也是Visual Studio的一部分。

0

將腳本放置在元素的底部會提高顯示速度,因爲腳本編譯會降低顯示速度。