この記事では主にJavaScriptでsetIntervalイベントとsetTimeoutイベントの実行を停止する方法を紹介しますので、必要な方は参考にしてください
jsコードでループイベントを実行する場合、setIntervalとこれら 2 つのメソッド setTimeout の詳細については、ここでは詳しく説明しません。ループ イベントを停止する必要がある場合の操作方法を簡単に説明します。
(1) setInterval メソッドは、指定された期間 (ミリ秒) に従って関数を呼び出したり、式を計算したりできます。このメソッドを停止するには、clearInterval メソッドを使用します。具体的な例は次のとおりです。
コードをコピー コードは次のとおりです。
<html> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <body> <input type="text" id="clock" size="50" /> <script language=javascript> var int=self.setInterval("clock()",50);//每隔 50 毫秒调用 clock() 函数 function clock(){ var t=new Date(); document.getElementById("clock").value=t; } </script> <button onclick="window.clearInterval(int)">停止 interval</button> </body> </html>
構文clearInterval(id_of_setinterval)
パラメータid_of_setintervalは、setInterval()によって返されるID値を表します。
clearInterval() メソッドは、setInterval() によって設定されたタイムアウトをキャンセルできます。clearInterval() メソッドのパラメータは、setInterval() によって返された ID 値である必要があります。
(2) setTimeout メソッドは、指定されたミリ秒数の経過後に関数を呼び出すか、式を計算するために使用されます。このメソッドは、clearTimeout メソッドを使用して停止できます。具体的な例は次のとおりです:
ヒント: setTimeout() はコードを 1 回だけ実行します。複数回呼び出す場合は、setInterval() を使用するか、コード自体で setTimeout() を再度呼び出すようにします。
コードをコピー コードは次のとおりです:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script type="text/javascript"> var c=0; var t; function timedCount(){ document.getElementById('txt').value=c; c=c+1; t=setTimeout("timedCount()",1000); } function stopCount(){ clearTimeout(t); } </script> </head> <body> <input type="button" value="开始计数" onClick="timedCount()"> <input type="text" id="txt"> <input type="button" value="停止计数" onClick="stopCount()"> </body> </html>
clearTimeout() メソッドは、setTimeout() メソッドで設定されたタイムアウトをキャンセルできます。
構文clearTimeout(id_of_settimeout)
パラメータid_of_setintervalは、setTimeout()によって返されるID値を表します。この値は、キャンセルされる遅延実行コード ブロックを識別します。
JavaScript で setInterval および setTimeout イベントの実行を停止する方法に関するその他の関連記事については、PHP 中国語 Web サイトに注目してください。