我正在嘗試編寫一個jQuery腳本,用於檢查用戶是否在最後一分鐘內點擊過,滾動過或點擊過某個鍵。如果是這樣,它應該在下一個時間間隔(1分鐘)顯示警報。如果不是,只要該頁面已在1小時內加載,它將每隔1分鐘顯示一次警報。jQuery保持活動狀態與動作
這看起來應該可以工作,但事實並非如此。任何想法:
$(function() {
var initialPageLoad = new Date().getTime();
var lastSiteAction = 0;
var checkInterval = setInterval(function(){
if(Date().getTime() - lastSiteAction > 60000){
if(Date().getTime() - initialPageLoad > 3601000){
clearInterval(checkInterval);
}else{
alert('Tried to checkin! You have not done anything in the last minute.');
}
}else{
alert('Tried to checkin! You have done something in the last minute.')
}
}, 60000); // 1 mins * 60 * 1000
$(document).keydown(function(){
lastSiteAction = new Date().getTime();
});
$(document).scroll(function(){
lastSiteAction = new Date().getTime();
});
$(document).mousedown(function(){
lastSiteAction = new Date().getTime();
});
alert('loaded!');
});
你爲什麼要1小時(無論任何互動)後清零間隔檢查? – Grezzo
由於網站會話在一個小時後過期,我不需要繼續檢查它們是否處於活動狀態。 – WhiskeyMike