2
私はGoogleアナリティクスでカスタム変数を使いこなしていましたが、実際に次のようなことが実際に機能する理由は不明でした。 Googleのトラッキングコードが最初に実行されるのはなぜですか(特にページの最下部にあるため)。GoogleのAnalyticsトラッキングコードが最初に実行されるのはなぜですか?
どちらのスクリプトも自己実行機能になっていますので、どのスクリプトを最初に実行するかはjavascriptによってどのように決定されますか?
// top of the page
<script type="text/javascript">
$(function()
{
_gaq.push(['_setCustomVar', 1, 'Account', 'PartTime', 1]);
});
</script>
// bottom of the page
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-xxxxxxxxxx']);
_gaq.push(['_setDomainName', '.xxxxxxxx.com']);
_gaq.push(['_trackPageview']);
(function()
{
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
私はファンクバグを使用して両方の機能にブレークポイントを設定し、最初にgoogle oneに行きます。そして、それが一番上のものに入ります。最初に実行されていない理由は自己実行機能ではないということです。 – chobo
最初の**スクリプト**が最初に実行されます。定義した関数は最初に実行されません( '$()'に渡されます)。その関数にブレークポイントを張ると、関数が呼び出されるまでそのブレークポイントがヒットします。 – Quentin