我在任何地方都找不到如何将hitCallback
参数与 google analytics一起使用ecommerce:send
。在文档中,它唯一的例子是 with send,pageview
。
这是我尝试过的代码:
ga('ecommerce:send',
{'hitCallback': function() {window.location.href="/test.php";}}
);
但它没有工作,虽然跟踪工作。
我在任何地方都找不到如何将hitCallback
参数与 google analytics一起使用ecommerce:send
。在文档中,它唯一的例子是 with send,pageview
。
这是我尝试过的代码:
ga('ecommerce:send',
{'hitCallback': function() {window.location.href="/test.php";}}
);
但它没有工作,虽然跟踪工作。
如前所述,hitCallback 不适用于电子商务:发送。疯狂。
但是,我发现(至少今天)它确实适用于 ecommerce:addTransaction 和 ecommerce:addItem (当它们最终被发送时)。因此,您只需要确保来自这些调用的所有 hitCallbacks 都已被击中,然后您就安全了。
我遇到了同样的问题,并且查看了源代码,没有干净的方法可以做到这一点。
问题ga('ecommerce:send')
是它在内部调用 -
ga('send', 'transaction', {...})
一次用于您的交易,然后ga('send', 'item', {...})
每个项目一次如果您必须等待ecommerce:send
完成,您可以执行以下操作之一:
ecommerce.js
允许您传入hitCallback
函数的自定义,或<img/>
如果数据小于 2KB,Google Analytics 会使用标签发送数据。因此,您可以检查<img/>
由 JavaScript 创建的每个标签,如果该src
属性包含 www.google-analytics.com,则等待它加载。我实际上已经成功使用了#2(参见http://jsfiddle.net/zkQXX/),但它确实是一个 hack。