jQuery MobileでGoogle Analyticsを使うために気をつけなければいけないこと

Using Google Analytics with jQuery Mobile

とあるとこで、とある話をしたので、とあるスライド置いときますよ。 要点を言うと、jQuery MobileでAjax遷移してると、普通にGoogle Analytics置いてても作動しないから気をつけてねって話です。

GATC for jQuery Mobile

僕はこうゆう感じでとりあえず対応しています。作動させるタイミングとフラグメント識別子を記録させるのがポイントです。あとはご自身のサイトに合わせてカスタマイズしていただければと思います。

//Account Setting
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-xxxxxxx-x']);

//Async Snippet
(function () {
    var ga = document.createElement('script');
    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);
})();

//Execute
$('[data-role="page"]').live('pageshow', function () {
    var u = location.hash.replace('#', '');
    u ? _gaq.push(['_trackPageview', u]) : _gaq.push(['_trackPageview']);
});

jQuery Mobile XSS Problem

ちなみに上記と関係ないですけど、jQuery Mobileのアルファ版使ってる人は直ちに最新版にアップデートしときましょうってお知らせ。

[email protected][email protected]らしいユーザーMTGありがとうございます。