2010-09-29 126 views

回答

2

您可以改用setInterval - 繼續運行。如果您需要一次性解決方案,請使用clearInterval刪除定時器。 setInterval將立即啓動,如果計算機睡着了,而事件應該被解僱。我在Chrome,Firefox和Internet Explorer中測試了這種行爲。作爲一個例子,請看http://blaeul.de/de/content/javascript-timer-test及其來源。

3

當Chrome進入後臺時,它會凍結JavaScript執行。當它最小化到Dock在OS X


有,據我知道有沒有解決辦法,我注意到這個圖紙上。如果你告訴我們你想做什麼,那麼可能會有一些可以做的事情。

+0

我嘗試通過ajax調用爲服務器輪詢每10秒獲取一次新數據(數據庫中的新更新)。我不知道當Windows喚醒時,gmail如何能夠繼續工作。 – Dave 2010-09-29 18:41:21

+1

@Dave:首先投票是*可怕*應該是最後的手段。試試[WebSockets](http://joshuakehn.com/blog/view/2/WebSocket-Tutorial-with-Node-js)。另外我猜測Google會提供某種檢查代碼來重新創建間隔。 – 2010-09-29 18:50:57

+4

@JoshK - Websocket支持還不夠寬;而且更普遍的Comet/long-poll方法並未得到所有網絡服務器的支持。 – jlarson 2012-01-11 16:45:03