我需要使用ga()发送事件,然后立即重定向到另一个页面。如果ga()发送未完成,则会被重定向取消。有什么机制(例如回调)可用来检测事件何时已传递到GA(或出错)?我目前只延迟一小段时间,但这不是确定性的。
答案 0 :(得分:2)
有(甚至被称为回调):Hit Callback。跟踪调用后的重定向确实是主要用例。例如,示例中的文档涉及拦截表单提交,并在表单发送后重新提交:
// Gets a reference to the form element, assuming
// it contains the id attribute "signup-form".
var form = document.getElementById('signup-form');
// Adds a listener for the "submit" event.
form.addEventListener('submit', function(event) {
// Prevents the browser from submitting the form
// and thus unloading the current page.
event.preventDefault();
// Sends the event to Google Analytics and
// resubmits the form once the hit is done.
ga('send', 'event', 'Signup Form', 'submit', {
hitCallback: function() {
form.submit();
}
});
});