2012-03-28 6 views
3

ユーザーをリダイレクトする前にGoogleアナリティクスの非同期スニペットがウェブページのトラッキングを完了しているかどうかを確認するにはどうすればよいですか?Googleアナリティクスが(非同期に)ページのトラッキングを完了しているかどうかを確認します

if(gaFinished()) 
{ 
    .... 

gaFinished()はどうすればよいですか?

ありがとうございます。

同期G​​oogleコードを使用していた場合は、これを行う必要はありませんが、最新の同期スクリプト(見つからないため)があります。私はこれを可能にすることを好むだろう。

答えて

0

_gaq配列はキューとして使用されています。つまり、アクションが実行されると、配列から削除されます。配列から項目を削除するだけでなく、すべてのアクションが処理されると配列全体が削除されるように見えます。この意志

<script type="text/javascript"> 
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); 
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); 
</script> 
<script type="text/javascript"> 
try{ 
var pageTracker = _gat._getTracker("UA-xxxxxx-x"); 
pageTracker._trackPageview(); 
} catch(err) {} 
</script> 

:私はGoogleが提供およびサポートされている(旧)同期スニペットを使用最後に

if (typeof _gaq.length == "undefined" || _gaq.length == 0) 
{ 
    .... 
} 
+0

わかりました...ただ明確にするため、これは私に教えてくれます。 – James

+0

@Jamesについては、私の改訂版の回答を参照してください。 –

+0

配列はイベントまたは電子商取引のトランザクションをいつでもプッシュするために使用できるので、削除される可能性は低いです。 –

0

:このことを念頭に置いて、次のコードは、あなたが探しているものを行う必要がありますトラッキングが完了した後にスクリプトをページのさらに下に実行できるようにします。

0

window['_gat']が存在するかどうかを確認できます。

EDIT

ランディ・ソリューション、window['_gat']同様にトラッキングコードが初期化されている場合にのみ、他の方法が__utm.gifコールの後だけexisteこと、_gaq._getAsyncTracker()です...

をあなたに言います。 だから、あなたがそれを行うことができます。分析が読み込まれているか(後者は、私が後だものです)+登録ページビューをロードした場合、これは面白そう

var gaFinished = function(){ 
    try { 
     var pageTracker = _gaq._getAsyncTracker(); 
     reutrn true; 
    } catch(err) { 
     return false; 
    } 
}; 
関連する問題