使用を含める方法に関するGoogleの従来の指示。したがって、ブラウザが何らかのコードが実際に実行されるまで外部JavaScriptライブラリを非同期的にロードする場合でも、ページのロードをブロックします。後の非同期命令は直接使用しませんが、ページの読み込みもブロックしますか?ga.js
document.write()
document.write()
document.write()
insertBefore
ただし、Googleはキャッシュmax-age
を86,400秒に設定します(1日であり、パブリックに設定されているため、プロキシにも適用できます)。そのため、多くのサイトがまったく同じGoogleスクリプトをロードするため、JavaScriptはキャッシュからフェッチされることがよくあります。それでも、キャッシュされている場合でもga.js
、リロードボタンをクリックするだけで、ブラウザが変更についてGoogleに問い合わせる場合がよくあります。そして、ga.js
まだキャッシュされていないときと同じように、ブラウザは続行する前に応答を待つ必要があります。
GET /ga.js HTTP / 1.1
ホスト:www.google-analytics.com
..。
変更された場合-以降:2009年6月22日月曜日20:00:33 GMT
キャッシュ制御:max-age = 0
HTTP / 1.x304は変更されていません
最終更新日:2009年6月22日月曜日20:00:33 GMT
日付:2009年7月26日日曜日12:08:27 GMT
キャッシュ制御:max-age = 604800、public
サーバー:ゴルフ
多くのユーザーは、ブラウザウィンドウで既に開いているニュースサイト、フォーラム、ブログの再読み込みをクリックし、Googleからの応答を受信するまで多くのブラウザをブロックすることに注意してください。SOホームページをどのくらいの頻度でリロードしますか?Google Analyticsの応答が遅い場合、そのようなユーザーはすぐに気付くでしょう。(スクリプトを非同期にロードするためにネット上で公開されている多くのソリューションがありga.js
、特にこの種のサイトに役立ちますが、Googleの更新された手順よりも優れているとは言えません。)
JavaScriptがロードされて実行されると、Webバグ(追跡画像)の実際のロードは非同期になります。したがって、ページでを使用しない限り、トラッキング画像の読み込みによって他のものがブロックされることはありませんbody.onload()
。この場合、Webバグがすぐに読み込まれない場合は、[再読み込み]をクリックすると、ブラウザがスクリプトを再度要求するため、実際には状況が悪化しIf-Modified-Since
ます。リロード前は、ブラウザはWebバグを待っているだけでしたが、リロードをクリックした後は、ga.js
スクリプトへの応答も必要です。
したがって、GoogleAnalyticsを使用しているサイトはを使用しないでくださいbody.onload()
。代わりに、jQueryの$(document).ready()やMooToolsのdomreadyイベントのようなものを使用する必要があります。
Google Analyticsがデータを収集する方法を説明しているGoogleの機能概要も参照してください。、トラッキングコードの仕組みを含みます。(これにより、GoogleがファーストパーティのCookieのコンテンツを収集することも公式になります。つまり、アクセスしているサイトのCookieです。)
更新:2009年12月、Googleは非同期バージョンをリリースしました。上記は、アップグレードがすべてを解決するわけではありませんが、念のためにアップグレードするように全員に指示する必要があります。