我正在网站上使用Google Analytics(分析)(gtag.js),并且正在尝试发送事件。
我有一个“添加到购物车”按钮,一个简单的<a class="ga-add-to-cart">Buy me!</a>
元素。
单击此按钮后,将触发gtag('event' ... )
方法:
$('.ga-add-to-cart').click(function(){
productName = 'something';
price = 123;
gtag('event', 'add_to_cart', {
'event_category': 'ecommerce',
'event_label': productName,
'value': price
});
});
这由Google here记录。
当然,因为我对按钮使用了
<a>
标记,所以单击页面后将重新加载该页面。页面重新加载和gtag
事件存在争用条件。但是在桌面浏览器中触发时,它仍然可以正常工作-我可以在控制台中看到HTTP请求,并在Google Analytics(分析)中看到事件。
但是,在iPhone,Safari浏览器上时,不会触发该事件。通过桌面Safari检查手机时,我看到HTTP请求已取消。
我显然在这里做错了。
在页面(重新)加载之前触发此事件的最佳方法是什么?
最佳答案
好的,所以也许我在搜索错误的内容。在这里找到了一些有用的信息...
https://developers.google.com/analytics/devguides/collection/gtagjs/sending-data#implement_event_callback_functions
....给出了gtag('event' ...)
方法上的回调示例。
我认为我的解决方案是
使用回调来延迟我的<a>
的默认操作,或者;
在页面重新加载的另一侧触发gtag('event' ...)
关于javascript - 重新加载页面之前触发的Google Analytics(分析)gtag事件在iPhone上不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49998966/