2011-06-09 20 views
1

我有一個問題,我想檢查時間並根據它進行處理。例如,從午夜12點到凌晨1點,我想停止刷新頁面。我怎麼做到這一點?停止小時之間的頁面刷新

function RefreshPage() 
{ 
    if (refresh == 'Y') 
    { 
       CheckAndStopAutoRefresh(); 
     } 
} 

function CheckAndStopAutoRefresh() 
{ 
    var d = new Date(); 
     var currentHour = d.getHours(); // 0-23 


     if (currentHour >= 0 && currentHour < 1) 
     { 
     return;  

     } 
     else 
     { 
      window.location=window.location; // refresh 
     } 


} 
+3

定義 「從清爽停止在網頁」。如果你想禁用用戶的瀏覽器的「刷新」按鈕,那麼當然,你可能不會。 – 2011-06-09 18:11:13

+1

我有一個「setTimeOut」函數刷新頁面。我只需要在這段時間之間停止刷新頁面。 – jack 2011-06-09 18:19:30

+1

你完全沒有提到你的問題。所以,事實上,你不想做「基於它的事情」。 – 2011-06-09 18:20:30

回答

5
//initialize date object 
var d = new Date(); 
var currentHour = d.getHours(); //note 0-23 

//you could use currentHour == 0 but this expression allows for a range  
if (currentHour >= 0 && currentHour < 1) 
{ 
    console.log('between 0:00 and 1:00 hrs'); 
    } 
else { console.log('after 1am'); } 

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date提供和日期對象

的概況,我也不太清楚你的意思是什麼「停止刷新」我不相信有可能禁用刷新/ F5,但也許如果你修改你的問題或指定你的意圖,我可以採取另一個刺問題。

EDITED

--edited,以反映最新的問題。

我會使用的setInterval(代碼毫秒,郎)

function CheckAndStopAutoRefresh() { 
    //initialize date object 
    var d = new Date(); 
    var currentHour = d.getHours(); //note 0-23 

    //you could use currentHour == 0 but this expression allows for a range  
    if (currentHour >= 0 && currentHour < 1) 
    { 
     console.log('between 0:00 and 1:00 hrs'); 
     } 
    else { console.log('after 1am'); } 
} 

setInterval(CheckAndStopAutoRefresh,60000); //60,000 milliseconds in a minute 
+0

+1煩擾和正確 – 2011-06-09 18:20:45

+0

'if(0 <= currentHour <= 1)'在JavaScript中不起作用。它被解釋爲'(0 <= currentHour)<= 1',它等於'TRUE <= 1',它是'TRUE'。 – 2011-06-09 18:20:50

+0

@火箭,它在鉻(webkit)中做到了,我將重新調整我以前的答案。 – matchew 2011-06-09 18:21:43