Google跟踪代码管理器跨域跟踪Javascript window.open

时间:2014-12-12 02:36:46

标签: analytics google-tag-manager

跨域跟踪适用于此网站的正常html链接,除非使用搜索功能,通过带有“do-book-now”类的div标签提交。 div标签使用外部javascript进行搜索:

$(document.body).getElements('.do-book-now').addEvent('click', function(){
    var arr = document.id('datepick').get("value");
    var nts = document.id('n_nights').getSelected().get("value");
    var a = document.id('n_adults').getSelected().get("value");
    var c = document.id('n_children').getSelected().get("value");
    var url = 'https://www.externaldomain.com';
    if (arr != '') url += '&arr=' + arr;
    if (nts != 'Nights') url += '&nts=' + nts;
    if (a != 'Adults') url += '&a=' + a;
    if (c != 'Children') url += '&c=' + c;
    dataLayer.push({'event': 'gtm.external_search'}); // Google Tag Manager event
    window.open(url);
    document.id('book-now-details').toggle();
});

一旦用户访问具有相同GTM安装的外部域,分析中的所有引荐信息都将丢失。如果跨域GTM正在为普通链接工作,我还应该做些什么才能让它在这种情况下工作?

你可以看到一个事件被触发,这是有效的,所以我们可以判断搜索何时发生。

1 个答案:

答案 0 :(得分:0)

问题在于您要推送到dataLayer的事件的名称。没有gtm.external_search这样的事件。如果您想使用自定义事件来跟踪点击事件,请从自定义事件名称中删除gtm.