У меня есть несколько ссылок, которые используют атрибут target = "_ blank" для открытия в новом окне. Я хочу прикрепить отслеживание целей Google Analytics к кликам по этим ссылкам.
Для этого я попытался прикрепить атрибут onclick = "pageTracker._trackPageview ('/ event / outgoing')" к ссылкам.
Но я обнаружил, что для ссылок с атрибутом target = "_ blank" событие Javascript onclick пропускается. Так что цель не записана. Другими словами, эта ссылка успешно записывает цель:
<a href="http://www.yahoo.com" onclick="pageTracker._trackPageview('/event/outgoing')">Click me</a>
Но это не так:
<a href="http://www.yahoo.com" target="_blank" onclick="pageTracker._trackPageview('/event/outgoing')">Click me</a>
Кто-нибудь знает, почему это может происходить? Предполагая, что нет простого решения, я предполагаю, что мне придется использовать Javascript для решения проблемы. Следующий код успешно записывает цель (но не открывает ссылку):
function attach_goal_tracking() {
var links = document.getElementsByClassName("buyTicketsLink");
for(var i=0; i<links.length; i++) {
links[i].onclick = record_goal;
}
}
function record_goal(e) {
e.stop();
pageTracker._trackPageview('/event/outgoing');
}
Но когда я добавляю в функцию record_goal, чтобы открыть ссылку ...
function record_goal(e) {
e.stop();
pageTracker._trackPageview('/event/outgoing');
var newWindow = window.open(this.getAttribute('href'), '_blank');
newWindow.focus();
}
... тогда не удается отследить цель.
Может кто-нибудь сказать мне, почему это может быть, и что я должен сделать, чтобы обойти эту проблему? К вашему сведению, я использую Prototype для Javascript.