在我的HTML页面上,我有一些驱动下拉菜单的Javascript代码。用户可以选择要下载的文件,然后按下按钮进行下载。
这是Javascript代码的一部分:
var dd = document.getElementById("OSselectDropdown");
var OSchoice = dd.options[dd.selectedIndex].value;
if (OSchoice == "win")
{
window.location.href = "http://mysite.com/downloads/installer.exe";
}
if (OSchoice == "mac")
{
window.location.href = "http://mysite.com/downloads/installer.pkg";
}
我希望能够跟踪下载文件的次数。我找到了this code,它使用了jQuery,它可以在Google Analytics中启用下载计数。
但是,代码似乎只对<a>
标记起作用。我做了一些测试,它似乎并不适用于我的情况,我认为因为我使用Javascript和window.location.href
连接到可下载文件。
有没有办法可以利用这个Javascript代码让Google Analytics跟踪我在下拉列表中获得的下载次数?
或者是否有其他或更好的方法来跟踪我的Javascript下拉列表中的下载内容?
根据提供的答案,以及查看Google's documentation,我已将代码更改为:
var dd = document.getElementById("OSselectDropdown");
var OSchoice = dd.options[dd.selectedIndex].value;
if (OSchoice == "win")
{
_gaq.push(['_trackEvent','Installer','Download', 'Windows']);
window.location.href = "https://" + top.location.host + "/+download/Windows_Installer.exe";
}
if (OSchoice == "mac")
{
_gaq.push(['_trackEvent','Installer','Download','Mac']);
window.location.href = "https://" + top.location.host + "/+download/Mac_Installer.pkg";
}
if (OSchoice == "linux")
{
_gaq.push(['_trackEvent','Installer','Download','Linux']);
window.location.href = "https://" + top.location.host + "/+download/Linux_Installer.tar.gz";
}
但是,我的Google Analytics界面没有任何变化。新调整的代码是否正确,如果是,我应该在哪里看到Google Analytics中跟踪的下载?
答案 0 :(得分:4)
您需要做的就是致电
_gaq.push(['_trackEvent','Install','exe','http://mysite.com/downloads/installer.exe']);
or
_gaq.push(['_trackEvent','Install','pkg','http://mysite.com/downloads/installer.pkg']);
在重定向用户之前,在代码中
更新:
为了确保实际跟踪事件,您必须推迟重定向并将其包装到.push()方法的回调中,check similar question
这个怎么样?
...
switch (OSchoice) {
case 'win':
_url = 'http://' + top.location.host + '/+download/Windows_Installer.exe';
_ext = 'exe';
break;
case 'mac':
_url = 'http://' + top.location.host + '/+download/Mac_Installer.pkg';
_ext = 'pkg';
break;
case 'linux':
_url = 'http://' + top.location.host + '/+download/Linux_Installer.tar.gz';
_ext = 'tar.gz';
break;
}
if (_url) {
_gaq.push(['_set', 'hitCallback', function(){window.location.href = _url;}]);
_gaq.push(['_trackEvent', 'Install', _ext, _url]);
}
答案 1 :(得分:2)
您正在寻找的是事件跟踪。以下是文档:eventTrackerGuide