Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在重定向到url之前使用Google Analytics hitCallback发送事件_Javascript_Google Analytics - Fatal编程技术网

Javascript 在重定向到url之前使用Google Analytics hitCallback发送事件

Javascript 在重定向到url之前使用Google Analytics hitCallback发送事件,javascript,google-analytics,Javascript,Google Analytics,我试图在点击特定链接时触发Google Analytics事件。为了确保在重定向到url之前发送事件,Google建议使用hitCallback函数 我尝试了这种方式,但它不起作用,因为链接会立即打开: $('#service a').on("click",function(e){ e.preventDefault(); var title = $(this).data('title'); var url = $(this).attr('href'); if ( type

我试图在点击特定链接时触发Google Analytics事件。为了确保在重定向到url之前发送事件,Google建议使用hitCallback函数

我尝试了这种方式,但它不起作用,因为链接会立即打开:

$('#service a').on("click",function(e){

  e.preventDefault();
  var title = $(this).data('title');
  var url   = $(this).attr('href');

  if ( typeof ga === 'function' ) {
    //console.log('started');
    ga('send', {
      hitType: 'event',
      eventCategory: 'header',
      eventAction: 'nav',
      eventLabel: 'service',
      eventValue: title,
      hitCallback : createFunctionWithTimeout(function() {
         //console.log('done')
         document.location = url;
      }, 100000)
    });
  }else{
    document.location = url;
  }

});
,谷歌建议:

function createFunctionWithTimeout(callback, opt_timeout) {
  var called = false;
    function fn() {
      if (!called) {
        called = true;
        callback();
      }
    }setTimeout(fn, 1000);
  return fn;
}

我想知道它为什么不工作,或者是否有其他方法来实现这一点。

事件值应为整数类型。你能试着硬编码一个整数看看它是否有效吗