dp("a.download-2").click(function(){
var e=dp(this).attr("id");
var t=dp(this).attr("name");
var n=dp(this).attr("rel");
var r=navigator.platform;
var i=r.substring(0,3);
if(i=="Win"){
jQuery("#fb_pixel").addClass("fb_conversion");
_gaq.push(["_trackEvent",n,"download",t]);
window.location.href="http://"+e+".rackcdn.com/abc123.exe";
}else if(i=="Mac"){
jQuery("#fb_pixel").addClass("fb_conversion");
_gaq.push(["_trackEvent",n,"download",t]);
window.location.href="http://"+e+".rackcdn.com/abc123.dmg";
}else{
alert("The software only supports Windows and Mac operating system.");return false}});
此代码中的跟踪无效。
但如果我在GA跟踪事件代码下添加一个警报代码。跟踪工作正常。像下面的代码,
dp("a.download-2").click(function(){
var e=dp(this).attr("id");
var t=dp(this).attr("name");
var n=dp(this).attr("rel");
var r=navigator.platform;
var i=r.substring(0,3);
if(i=="Win"){
jQuery("#fb_pixel").addClass("fb_conversion");
_gaq.push(["_trackEvent",n,"download",t]);
alert(n+" "+t);
window.location.href="http://"+e+".rackcdn.com/abc123.exe";
}else if(i=="Mac"){
jQuery("#fb_pixel").addClass("fb_conversion");
_gaq.push(["_trackEvent",n,"download",t]);
alert(n+" "+t);
window.location.href="http://"+e+".rackcdn.com/abc123.dmg";
}else{
alert("The software only supports Windows and Mac operating system.");return false}});
我不知道为什么这个警报会影响。在右边它不应该。
先谢谢。
答案 0 :(得分:1)
行window.location.href="http://"+e+".rackcdn.com/abc123.exe";
强制浏览器在您的GA代码有机会工作之前重定向。
因此,您可以在编写GA代码后尝试在代码中使用setTimeout
。这样,您可以确保在重定向页面之前运行GA代码。
alert
有效,因为它会暂停执行,直到您点击“确定”为止,这是世界上任何javascript在此之前工作的足够时间。