javascript - How can I ignore ga() event tracking code throughout my site when I remove google analytics in localhost? - Stack O

On localhost, I disable my google analytics code by incorporating it into an if statement like so:var s

On localhost, I disable my google analytics code by incorporating it into an if statement like so:

var s = window.location + "";

if (s.indexOf('localhost') < 0) {
    //GA universal analytics tracking snippet
}

However, throughout my site there are various event tags using ga('send', 'event', etc...); - when my GA snippet is disabled on localhost these functions return errors (Uncaught ReferenceError: ga is not defined).

Is there a way to disable these functions without putting them all into their own individual if statements? I was thinking some kind of global statement like this might work, but it doesn't:

var s = window.location + "";

if (s.indexOf('localhost') > 0) {
    ga = function () {};
}

Is there a good best practice for solving this? Thanks!

On localhost, I disable my google analytics code by incorporating it into an if statement like so:

var s = window.location + "";

if (s.indexOf('localhost') < 0) {
    //GA universal analytics tracking snippet
}

However, throughout my site there are various event tags using ga('send', 'event', etc...); - when my GA snippet is disabled on localhost these functions return errors (Uncaught ReferenceError: ga is not defined).

Is there a way to disable these functions without putting them all into their own individual if statements? I was thinking some kind of global statement like this might work, but it doesn't:

var s = window.location + "";

if (s.indexOf('localhost') > 0) {
    ga = function () {};
}

Is there a good best practice for solving this? Thanks!

Share Improve this question edited Jan 6, 2014 at 13:23 Denys Séguret 383k90 gold badges811 silver badges777 bronze badges asked Dec 24, 2013 at 20:18 YPCrumbleYPCrumble 28.8k25 gold badges112 silver badges175 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 8

It would be simpler to do this :

var ga = ga || (function(){});

If ga is defined, this does nothing. If it's undefined, it sets its value to a no-op function, preventing the error.

But I don't think it's a good idea to disable the script when you develop : it makes one more reason to have an unexpected bug in production. The best practice here would be, in my opinion, to add a filter in Google Analytics. See Exclude internal traffic.

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745663294a4638968.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信