2015-01-14 80 views
0

我的移動網頁正在使用以下JavaScript來顯示當前的服務器時間。 如果我顯示此頁面,然後瀏覽另一個選項卡幾分鐘並返回到頁面,它運行良好。 (即第二次訪問的時間顯示)長時間隱藏持續時間後,addEventListener是否被忽略?

document.addEventListener('visibilitychange', function() { 
     if (!document.hidden) { 
      // show current server time 
     } 
    }); 

但是如果我顯示此頁,然後瀏覽另一個選項卡和商務小時內離開我的電話, 顯示的時間是第一個,當我瀏覽後頁營業時間。

  • addEventListener長時間不活動後被清除嗎?
  • 頁面可見性事件在長時間不活動後是否正確啓動?
  • 如果不是,我該如何實現相同的行爲?

我在Android 4.1上使用Chrome 39。

回答

0

這是一種正常的行爲,當標籤失去焦點或瀏覽器是不活動的任何未決的的JavaScript執行將不執行,你可以做的是連接到window.onfocus頁面來更新服務器時:

window.onfocus = function(){ 
    //do here what you need. 
}; 

你可以看到文檔here

+0

聽起來很合理。我會試一試。 – yskkin

+0

onfocus事件不起作用。 – yskkin