2016-06-21 6 views
1

現在の秒を常にチェックしている特定の第2の値と一致する場合は、ページを更新して続行するjavascriptを記述しようとしています。現在の時刻に基づいて指定された秒間隔でリフレッシュします。たとえば、3:01:10 PM、3:01:15 PM、3:01:20 PM、3:02:10 PMなど現在の時刻に基づくJavaScriptのページリフレッシュ

以下のコードは動作していないようです - 任意のアイデア私はこれをどのように達成することができましたか?ありがとう!

var seconds = new Date().getSeconds(); 
setTimeout(function(){ 
if (seconds == 10 || seconds == 15 || seconds == 20) { 
    window.location.reload(1); 
} 
}, 1000); 
+0

'setTimeout'の中に' var seconds = new Date()。getSeconds(); 'を入れてください。 – BenG

+0

pls。 JSがクライアントの時間を使用していることに気づく - それは様々なことができる –

答えて

3

あなたのコードでは、secondの値を正確に1回取得します。

setInterval(function(){ 
    var seconds = new Date().getSeconds(); 
    if (seconds == 10 || seconds == 15 || seconds == 20) { 
     window.location.reload(1); 
    } 
}, 1000); 
+1

ありがとう、これは働いた! – gabebt

0

あなたの問題は、あなたが「秒」の値を更新したことがないということです:あなたは、関数内の変数を移動し、setTimeoutsetIntervalに変更する必要があります。関数に移動してみてください。

var seconds; 
setTimeout(function(){ 
seconds = new Date().getSeconds(); 
if (seconds == 10 || seconds == 15 || seconds == 20) { 
    window.location.reload(1); 
} 
}, 1000); 
関連する問題