我在美國東部時間下午5:25使用JavaScript刷新我的頁面。 例如,如果用戶在美國東部時間下午5點到達我的頁面,並且他留在美國東部時間下午5點40分讓我們假設。那麼我想在美國東部時間下午5點25分刷新我的頁面。如何在特定時間刷新頁面
我該如何做到這一點?
我在美國東部時間下午5:25使用JavaScript刷新我的頁面。 例如,如果用戶在美國東部時間下午5點到達我的頁面,並且他留在美國東部時間下午5點40分讓我們假設。那麼我想在美國東部時間下午5點25分刷新我的頁面。如何在特定時間刷新頁面
我該如何做到這一點?
使用setInterval
在特定的時間間隔檢查時間,如果達到期望的時間,只需使用location.reload
:
window.setInterval(funciton() {
var now = new Date();
if(now.getTime() == SOMETHING) {
location.reload();
}
}, REFRESH_INTERVAL);
如果你想使用時區計算等我建議moment.js。
UPDATE:
有一個在this answer提供一個很好的片斷,這確實它更優雅。
你可以計算時間重新加載,然後設置超時功能,重新加載頁面:
var now = new Date()
var timeOfRefresh = new Date();
timeOfRefresh.setHours(5);
timeOfRefresh.setMinutes(25);
timeOfRefresh.setSeconds(0);
var diff = timeOfRefresh.getTime() - now.getTime();
if (diff < 0) { // is after 5:25
diff += 24 * 60 * 60 * 1000; // refresh next day
}
setTimeout(location.reaload, diff);
比我的解決方案要容易得多! –