2012-02-21 1 views
3
<a href="http://example.com/test.html" 
    onclick="_gaq.push(['_link', 'http://example.com/test.html']);"  
    class="noFloat" 
    target="_blank"> 
    Click Me 
</a> 

У меня проблема с этим кодом. Без возврата false; У меня есть новое окно, и все в порядке, но тот же URL-адрес также открыт в том же родительском окне. Тогда у меня есть два окна с одним и тем же контентом. Я думаю, что проблема в перенаправлении _gaq.push Пожалуйста, помогите мне! Спасибо!OnClick для Google Analytics и целевой _blank. Ссылка не работает?

ответ

9

_link заменит вашу текущую страницу ссылкой. Поэтому вы всегда должны возвращать false, потому что Google Analytics будет отвечать за перенаправление этой ссылки.

Также Google не поддерживает атрибут _blank. Поэтому вам нужно найти способ обойти.

_gaq.push(['_setAllowLinker', true]); 
function _gaLink(a) { 
    url = a.href 
    _gaq.push(function() { 
     if (a.target == '_blank') { 
      window.open(_gat._getTrackers()[0]._getLinkerUrl(url)); 
     } else { 
      _gaq.push(['_link', url]); 
     } 
    }); 
    return false; 
}​ 

Теперь вы можете позвонить ему вместо Google Analytics _link.

<a href="http://example.com/test.html" 
    onclick="return _gaLink(this);"  
    class="noFloat" 
    target="_blank"> 
    Click Me 
</a> 
+1

Именно так, добавить некоторое JQuery или аналогичную автоматическое связывание магии, и вы установите для измерения связи. –

+0

Отлично! За исключением того, что Adblock блокирует открытие этих новых вкладок. – Julien

0

Я столкнулся с той же проблемой, что и цель = "_ blank" не работает при добавлении кода для загрузки файлов отслеживания.

this website раздел «Автоматизация» показывает код jQuery, который будет определять различные типы ссылок на вашем сайте (файлы, mailto и т. Д.) И автоматически добавлять событие onclick с помощью _gaq.push.

в случае выше ссылка не работает: http://www.blastam.com/blog/index.php/2011/04/how-to-track-downloads-in-google-analytics/