2015-05-14 78 views
0

我的网站的一部分从同一个动作产生少量事件。 Google Analytics的默认设置是让这些事件独立运行。但是,其中一个事件需要最后发生。有没有办法强制事件完成的顺序,或至少有一个事件依赖于另一个事件?让事件取决于另一个事件的完成

我没有找到关于这个问题的文件。先谢谢您的帮助。

回答

0

谷歌通用分析有hit callbacks,当完成跟踪呼叫被调用的函数。你至少可以尝试拼图事件跟踪调用中的事件击中

ga('send', { 
    'hitType': 'event',   // Required. 
    'eventCategory': 'category', // Required. 
    'eventAction': 'action',  // Required. 
    'eventLabel': 'label', 
    'hitCallback': function() { 
    ga('send', { 
    'hitType': 'event',   // Required. 
    'eventCategory': 'category', // Required. 
    'eventAction': 'action 2',  // Required. 
    'eventLabel': 'label 2' 
    }); 
} 
}); 

未经检验的,但是从文件来看,我不明白为什么这止跌的工作。

+0

感谢您的回应!我喜欢它是使用GA配置而不是进入JavaScript的解决方案。我锣尝试这个 –

0

在Google Analytics中没有内置的方法。要实现这种行为,您必须根据您的要求和/或应用程序逻辑自行设计。

如果您使用JavaScript实现网站,您可能有兴趣使用q library,它可以帮助您创建和编写JavaScript中的异步承诺。

没有进入太多细节(因为它可能是你的问题的范围),这可能会产生这样的:

Q.all([handleEventOne(), handlerEventTwo()]) // Wait for 2 handlers to complete 
.done(function (values) { // Execute this callback once the 2 handlers have completed 
    ga('send', 'event', 'Event Chain', 'Trigger', 'Last Event'); 
}); 
1

你能不能做一个简单的标志?

事件#1

var flag = false; 

function eventOne(){ 
    ga('send', 'event', 'Event Chain', 'Trigger', 'First Event'); 
    flag = true; 
} 

function eventTwo(){ 
    if (flag) { 
     ga('send', 'event', 'Event Chain', 'Trigger', 'Last Event'); 
    } 
}