调整Google Analytics中的跳出率

时间:2015-05-04 03:26:50

标签: javascript google-analytics

我试图想象一下在Google Analytics中注册退回的方式。

这是我的分析代码:

<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-xxxxxxxx-1x', 'auto');
ga('send', 'pageview');
</script>

我想这样做,只有当它们在5秒钟之前离开网站时,反弹才会注册。我怎么能这样做?我知道应该有一些方法可以使用js

任何帮助都将不胜感激。

谢谢!

1 个答案:

答案 0 :(得分:4)

您可以发送Custom Event,以“ping”Google Analytics并防止记录退回。

这可能是这样的:

<script type="text/javascript">
   (function () {
      setTimeout(function () {
         if (typeof window.ga !== 'undefined') {
            ga('send', 'event', 'Bounce Disabling', 'Ping', '5 second timeout');
         }
      }, 5*1000); // 5000ms delay
   })();
</script>

编辑:如果您想根据页面上的时间记录数据,可以使用以下内容。

elapsedTime值作为ga()调用的最后一个参数传递将允许您自动计算平均事件值等度量标准 - 如果有任何用途给你。

<script type="text/javascript">
    (function () {
        var initTime = new Date().getTime();

        window.addEventListener('beforeunload', function (event) {
            var closeTime = new Date().getTime();
            var elapsedTime = closeTime - initTime; // Time elapsed since page loaded (in ms).

            if (typeof ga !== 'undefined') {
                if (elapsedTime <= 60 * 1000) { // 60 000 ms = 1 min
                    // Page loaded less than 1 minute ago:
                    ga('send', 'event', 'Page View Time', 'Duration', 'Under 1 minute', elapsedTime);
                } else {
                    // Page loaded over 1 minute ago:
                    ga('send', 'event', 'Page View Time', 'Duration', 'Over 1 minute', elapsedTime);
                }
            }
        });
    })();
</script>