Javascript 如何将Google Analytics集成到jQueryMobile网站中

Javascript 如何将Google Analytics集成到jQueryMobile网站中,javascript,html,jquery-mobile,google-analytics,Javascript,Html,Jquery Mobile,Google Analytics,jQueryMobile像每个站点一样加载它的第一个页面。通常的谷歌分析集成是有效的——请求被跟踪。但是下面的页面是异步加载的,并且不会跟踪用户的点击 如何将Google Analytics集成到jQueryMobile网站中,以便跟踪所有页面点击?Jon Gales就此写了一篇很棒的文章 以下是他建议使用的代码: $('[data-role=page]').live('pageshow', function (event, ui) { try { _gaq.push(

jQueryMobile像每个站点一样加载它的第一个页面。通常的谷歌分析集成是有效的——请求被跟踪。但是下面的页面是异步加载的,并且不会跟踪用户的点击


如何将Google Analytics集成到jQueryMobile网站中,以便跟踪所有页面点击?

Jon Gales就此写了一篇很棒的文章

以下是他建议使用的代码:

$('[data-role=page]').live('pageshow', function (event, ui) {
    try {
        _gaq.push(['_setAccount', 'YOUR_GA_ID']);

        hash = location.hash;

        if (hash) {
            _gaq.push(['_trackPageview', hash.substr(1)]);
        } else {
            _gaq.push(['_trackPageview']);
        }
    } catch(err) {

    }

});
更新

由于
live
现在已不推荐使用,如果您使用的是jQuery 1.7+,那么应该在
事件上使用


这些是参考资料,请阅读以了解您的知识。

对于那些在Phonegap和谷歌分析方面有问题的人:

谷歌代码使用cookies,但它不能处理Phonegap使用的文件://url。 Pokki团队使用localStorage代替Cookie制作了一个应用程序。 我在github上制作了一个fork,以消除对pokki的需求,因此这里有一个将phonegap作为独立库使用的解决方案


希望这能帮助其他人:)

-1。这两个链接都不能回答这个问题。前者适用于本地iOS和Android应用程序上的GA;后者与jQuery Mobile无关。不过,您不需要调用_setAccount。如果你已经在第一页上了。在jQuery Core 1.6.4打包了_setAccountjQueryMobile 1.0 Final之后,您可以调用multiple time _trackPageview,因为升级到1.7+可能会导致问题(我在Blackberry和1.7中看到过白屏问题)。我提出了这个问题,因为jQuery Mobile 1.0 Final不适合使用bceuase
.on()
,但是您可以在同一个域中使用
.delegate()
。请注意,您必须在jQuery Mobile执行之前绑定此事件,否则它根本无法工作(将它放在您的mobileinit处理程序中)。是的,你应该只调用一次_SetAccount,但它也是这样工作的。在android 4.0+和带phonegap的ios6上对我不起作用:(你不能用
上的
替换
live
,委托的格式是不同的。