回答
退房保羅愛爾蘭這個漂亮的jQuery插件idletimer和demo here
基本上會觸發指定後的空閒時間和內您可以轉發回主頁的回調函數。
用法:
// idleTimer() takes an optional argument that defines the idle timeout
// timeout is in milliseconds; defaults to 30000
$.idleTimer(10000);
$(document).bind("idle.idleTimer", function(){
// function you want to fire when the user goes idle
});
$(document).bind("active.idleTimer", function(){
// function you want to fire when the user becomes active again
});
// pass the string 'destroy' to stop the timer
$.idleTimer('destroy');
請注意所涉及的事件: '鼠標移動的keydown DOMMouseScroll滾輪鼠標按下touchstart touchmove' From source code
您也可以使用refresh meta tag做到這一點只用HTML標記,避免全部使用javascript:
<meta HTTP-EQUIV="REFRESH" content="30; url=http://www.yourdomain.com/">
This as認爲用戶採取的每一個行動都將從當前頁面導航到新頁面。如果是這種情況,那麼通過將其添加到每個頁面的頭部,只要用戶在30秒內不導航到另一個頁面,瀏覽器就會重定向回索引。
然後在30秒後(即使有人仍在使用自助服務終端),它將他們轉回家。 – Sparky 2012-04-12 17:06:16
@ Sparky672,這取決於信息亭應用程序的設計方式。如果它使用觸摸屏,那麼它可能只捕獲點擊,而這些信息亭通常是由靜態HTML文件構建的。在該塞納里奧這種技術將工作正常。你是對的,如果有頁面內的交互,那麼就需要一個JavaScript解決方案。 – Prestaul 2012-04-12 17:09:03
如果人們可以解釋他們爲什麼拒絕投票回答,我很樂意。它不會假設任何東西,但提供一些合理的解決方案,我相信JavaScript不是最好的答案。 – Prestaul 2012-04-12 18:08:45
我用兩個一元刷新
<meta http-equiv="REFRESH" content="30;url=http://www.the-domain.com">
,延遲了window.location
window.setTimeout("location='http://www.the-domain.com'",30000);
做到這一點。
-1:避免使用字符串評估(包括'setTimeout');改用匿名函數。 – 2012-04-12 17:12:16
我發現這個代碼示例是最有用的。
setIdleTimeout(30000); // 30 seconds
document.onIdle = function() {window.location = 'URL to navigate to'}
如果它是一個觸摸屏,只需點擊足以打破空閒時間,所以
var idle, isIdle;
function createIdle() {
idle = window.setTimeout("alert('hey where are you?')",5000);
}
$("*").click(function(){
clearTimeout(idle);
createIdle();
});
createIdle();
- 1. CSS:每30秒重複動畫
- 2. 如何自動檢測每30秒的下拉選項
- 3. coreservicesd/lssave每30秒寫一次
- 4. 每30秒更改一次iframe源。
- 5. 每30秒運行一次Android服務
- 6. 的Android更新的TextView爲每30秒
- 7. 正在重置計數器,每30秒
- 8. AudioUnit每30秒錄製一次毛刺
- 9. 每30秒調用一次函數
- 10. 作物MP3到前30秒
- 11. 的setInterval($得到池30秒
- 12. 自動重啓的.py每30分鐘
- 13. 5分30秒
- 14. 循環通過網頁列表每30秒(更新頁每30分鐘?)
- 15. OnTouchListener,ACTION_UP在30秒超時後自動啓動
- 16. UICollectionView垂直自動滾動每3秒
- 17. HttpWebRequest.BeginGetResponse塊30-60秒
- 18. 自動化gdb:每10毫秒顯示一次回溯
- 19. 每隔幾秒就會自動溢出
- 20. 如何自動刷新MVC PartialView每秒
- 21. 用PHP添加30秒到時間
- 22. 報平安每秒鐘使用藝術家的動畫
- 23. 如何每隔X秒自動刷新一次自動刷新?
- 24. 需要active_record的ruby減慢腳本啓動到30秒
- 25. 每100秒垃圾回收
- 26. 如何每30秒顯示/更新來自指定哈希標籤的推文
- 27. 按秒採樣間隔聚合到30秒的間隔,POSIXct
- 28. 滾動到DIV的底部每X秒
- 29. 每週Gmail自動回覆
- 30. 超時30秒後,等待
你計劃如何定義 '空閒' 時間?你正在測量按鍵,頁面加載,鼠標/光標移動..? – 2012-04-12 17:04:10
如果用戶花費超過30秒的時間來簡單閱讀頁面上的內容,該怎麼辦?太糟糕了,重新開始? – Sparky 2012-04-12 17:11:25