位置

2009-07-01 60 views
11

的谷歌Analytics(分析)設置說明狀態:位置

此跟蹤代碼段應包含在您的網站頁面,以便 ,它出現在 頁面的HTML的底部(或生成的HTML ) 結構,關閉前<機構> 標記。

他們的代碼片段是否需要這個位置才能完全發揮作用,還是Google僅僅因爲它提高了頁面加載性能而使腳本處於底部?

+4

請注意,您指的是過時的文檔。在2009年,Google推出了他們的異步跟蹤代碼片段,後者在後臺加載。他們建議將它放在HEAD部分的底部: http://code.google.com/apis/analytics/docs/tracking/asyncTracking.html – Brian 2011-03-26 20:29:15

+0

提供的答案都不符合您的問題:可以定位腳本反映它是否在工作。底部的位置可能是其不工作的原因嗎?你知道了嗎? – bogatyrjov 2013-10-01 13:29:50

回答

4

這只是爲了提高頁面加載性能。如果此代碼剛剛開始,那麼如果由於某種原因分析代碼運行緩慢,則頁面的其餘部分將等待它完成或在加載之前超時。

分析代碼可能會向Google的服務器發出查詢,所以他們必須等待服務器完成響應才能完成。如果(上帝禁止)Google的網絡服務器將被備份或滯後,這會嚴重影響您網站的加載時間。

+0

我快速查看了代碼,並沒有看到任何document.write()調用。似乎支持你的聲明只是爲了提高性能。 – Soldarnal 2009-07-02 21:54:24

0

昨天我被同事問到了。我會想象它會在腳本執行之前加載整個文檔。

如果加載了更多的文檔,更多的文檔可以由腳本處理。

0

我相當確定它只是用於頁面性能。當然,這可以通過任何最初不需要的JavaScript庫/代碼片段來完成。

2

我發現有時候Google提供的代碼會因爲客戶端延遲而導致頁面加載延遲。通過將它放在源代碼的底部,它不會導致瀏覽器在繼續頁面呈現之前停止並等待JavaScript完成。

將Analytics代碼移入您的domready/onload函數以獲得最佳性能結果。

2

YSlow guide

引起腳本的問題是 它們阻斷並行下載。所述 HTTP/1.1規範建議 瀏覽器下載不超過兩個 部件在每主機名平行。 如果您通過多個 主機名提供圖片,則可以同時發生兩個以上的下載 。雖然 腳本正在下載,但是, 瀏覽器不會啓動任何其他 下載,即使在不同的 主機名上。

在某些情況下,它是不容易 移動腳本底部。如果, 例如,腳本使用 文件撰寫插入 頁面內容的一部分,它不能在頁面移動 低。可能還有 範圍問題。在很多情況下,有 是解決這些 情況的方法。

另一個建議,經常 出現是使用延遲腳本。 DEFER屬性指示 腳本不包含 document.write,並且是 瀏覽器的線索,它們可以繼續 呈現。不幸的是,Firefox 不支持DEFER屬性。 在Internet Explorer中,可能會延遲腳本 ,但不會達到所需的 。如果一個腳本可以推遲, 它也可以被移動到頁面的底部 。這將使您的網頁加載速度更快。

0

底部的標籤過去一直是爲了儘量減少跟蹤腳本對網站行爲的可能影響:優先考慮的是讓一個功能性網站在其工作後跟蹤它。您可能無法跟蹤所有的頁面瀏覽量,但對最終用戶來說不那麼重要。

異步語法既解決了可靠性和性能問題,又保持了簡單的部署。

它位於HEAD部分的末尾。