2017-08-28 30 views
-4

私は毎秒setintervalで時間を加算するdivを持っています。私はこのsetintervalを停止し、私のdivの他のテキストを設定したいが、問題は私の新しいテキストが1秒間表示され、時間が私のdivに戻っている。誰が私を助けることができますか?innerhtmlでsetintervalを停止するにはどうすればいいですか?

+0

まず最初に[ask]をお読みください。 – CBroe

+1

コードを表示できれば、人々があなたを助けることができます!おそらく 'clearInterval'を呼び出す必要があります。 – Stuart

答えて

1

キーワードを使用するか、変数にinterval-idを格納してからclearInterval関数を使用して停止させることができます。

HTML:

<div id="time"></div> 

JS(return):

let time = 0; 
setInterval(() => { 
    // this line stops the interval 
    if(time > 10) return document.getElementById('time').innerHTML = 'finished!'; 
    document.getElementById('time').innerHTML = 'seconds: ' + time; 
    time++; 
}, 1000) 

JS Bin

JS(clearInterval

let time = 0; 
let int = setInterval(() => { 
// this line stops the interval 
if(time === 10) clearInterval(int); 
    document.getElementById('time').innerHTML = 'seconds: ' + time; 
    time++ 
}, 1000) 

JS Bin

関連する問題