是否可以使用Google Analytics跟踪类似页面的哈希链接?
例如,我想让index.php/#1、index.php/#2和index.php/#3都显示为独立的页面点击,并显示独立的页面停留时间。
如果没有简单的方法可以实现此功能,我该如何在jQuery中将跟踪事件添加到onclick事件中?这样做仍然能够准确地获取“页面”信息吗?
是否可以使用Google Analytics跟踪类似页面的哈希链接?
例如,我想让index.php/#1、index.php/#2和index.php/#3都显示为独立的页面点击,并显示独立的页面停留时间。
如果没有简单的方法可以实现此功能,我该如何在jQuery中将跟踪事件添加到onclick事件中?这样做仍然能够准确地获取“页面”信息吗?
一般而言,您的代码可能如下所示
_gaq.push(['_trackPageview',location.pathname + location.search + location.hash]);
你可以将该代码绑定到应用程序内每次哈希变更的事件上,或者你可以使用一个通用哈希变更插件,该插件使用HTML5 onhashchange,并在旧版浏览器中使用向后兼容的技巧,将该代码绑定到该事件上,以便每次哈希更改时都会触发。
使用该插件,你的代码可能如下所示:
$(window).hashchange( function(){
_gaq.push(['_trackPageview',location.pathname + location.search + location.hash]);
})
这是您在新的Universal Analytics中执行此操作的方法:
ga('set', 'page', location.pathname + location.search + location.hash);
ga('send', 'pageview');
谷歌分析文档中有一条注意事项:
尽管
send
命令的页面视图点击事件技术上接受第三个可选参数page
字段,但在测量单页应用程序时不推荐通过这种方式传递page
字段。
如果你正在使用Google Tag Manager中的Google Analytics,则可以按照以下方式进行设置:
ga('send', 'pageview', location.pathname+location.search+location.hash);
。 - Nicolas Renon看起来这也可能很有用: https://developers.google.com/analytics/devguides/collection/analyticsjs/single-page-applications
非常有帮助,清晰明了的“该做什么”和“不该做什么”。
好问题。要跟踪哈希链接,你必须为指向该哈希的每个链接跟踪事件或页面浏览量。对于页面浏览量,以下是一段示例代码:
onclick="_gaq.push(['_trackPageview','/page/hashLink1']);"
ga('send', 'event', 'category', 'action', {'page': '/my-new-page'});