4
什麼是跟蹤用戶在網站上的互動的好方法。然後,我的意思是捕捉一切都像:HTML5 + JS:跟蹤用戶互動
- 滾動
- 點擊
- 移動光標
- 發光輸入
當然有很多的HTTP發佈/ get請求也可能是令使用者感到不快。 我正在尋找一種方式來做到這一點,而不會煩人用戶,也沒有太多數據丟失。
我希望有人對此有一些經驗!
什麼是跟蹤用戶在網站上的互動的好方法。然後,我的意思是捕捉一切都像:HTML5 + JS:跟蹤用戶互動
當然有很多的HTTP發佈/ get請求也可能是令使用者感到不快。 我正在尋找一種方式來做到這一點,而不會煩人用戶,也沒有太多數據丟失。
我希望有人對此有一些經驗!
免責聲明:對您的用戶進行間諜活動是很多用戶所不滿的,我建議您不要讓用戶知道您正在做什麼。
也就是說,您可以將事件偵聽器添加到要監視的事件。然後,只需將它們存儲在本地,並且只在給定的時間間隔或用戶離開頁面時將其存儲在服務器端。下面是一個簡單的例子(小提琴:http://jsfiddle.net/8ucSV/):
var Spy = (function (register, undefined) {
var eventStore = [],
// you can also add other things like "mousemove" here…
events = ['click'];
var store = function (type, data) {
eventStore.push({
type: type,
data: data
});
};
events.forEach(function (event) {
register(event, function (data) {
store(event, data);
}, false);
});
return {
dump: function() {
console.log(eventStore);
},
store: function() {
// do whatever you wanna do here…
}
};
})(document.addEventListener);
很明顯,你可以添加更多的抽象監控比您可以通過addEventListener
註冊事件其他的事情。我也並不太在乎瀏覽器的兼容性。
感謝您的評論,但是關於不同的頁面和關閉頁面呢。 HTTP請求無法在窗口關閉事件中完成。 – Tim
您也可以存儲當前位置以使數據與頁面相關聯。至於其他問題,您可以定期將數據發送到服務器,但也可以將它們存儲在'localStorage'中。這樣,情慾塊將被存儲在客戶端,並且可以在他下次訪問您的網站時提供服務。你只會失去最後一塊。如果時間不重要,您也可以將其存儲在那裏,然後每次開始訪問您的網站時只發送一次(然後您將丟失僅訪問一次的人的數據)。 –
我主要有一次購買產品的遊客。 'localStorage'將在瀏覽器支持時解決多頁面問題。感謝我認爲我現在弄明白了;) – Tim