我试图跟踪用户在我的网站上的事件,例如点击或鼠标悬停以及不同类型的事件.... 即使用户离线工作,是否有任何解决方案来跟踪事件...... 我可以将它们存储在 cookie 之类的东西中,并在找到事件的互联网连接时将它们发送到服务器吗?
这可能吗?
谢谢
最佳答案
取决于您的目标浏览器类型。这些是用于 HTML5 离线网络应用程序的吗?
如果他们 support ononline
and onoffline
events ,您可以相当简单地自己实现它。
一些可能可行的代码,使用离线事件、原生 JSON 和 HTML5 本地存储:
if(!localStorage.getItem("offlineGA")){
localStorage.setItem("offlineGA","[]");
}
var _ogaq = {
push : function(arr){
if(navigator.onLine || !("onLine" in navigator)){ // if online or if browser doesn't support onLine/offLine detection.
_gaq.push(arr);
}
else{
var stored = JSON.parse(localStorage.getItem("offlineGA"));
stored.push(arr);
localStorage.setItem("offlineGA", JSON.stringify(stored));
}
}
};
$(window).bind("online", function(){ // if you don't have jQuery, you can do window.ononline instead
_gaq.push( JSON.parse(localStorage.getItem("offlineGA")) );
localStorage.setItem("offlineGA","[]"); //empty it
});
那么您只需使用 _ogaq
作为 _gaq
的包装。
即:
_ogaq.push(["_trackEvent","Category", "Action"]);
关于javascript - 使用 Google Analytics 跟踪线下事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8114809/