-4

私はこの部門の初心者ですから、私は時間の遅れでifステートメントのタイプを作ることができますか?例:特定のアクション(たぶんクリックイベント)がある期間内に行われた場合、時間はリセットされ、そうでない場合は関数が呼び出されます。JavaScriptのタイムディレイ

+0

絶対に!あなたは[** 'setTimeout()' **](https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout)を探しているか、できれば[**コールバック**](http://javascriptissexy.com/understand-javascript-callback-functions-and-use-them/)を関数の実行から削除します。 –

+0

** ['setTimeout()'](https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout)**を参照してください。 –

答えて

0

ifステートメントでは実行できませんが、setTimeoutおよびclearTimeoutステートメントでは実行できません。

ここでは、ボタンをクリックしない限り、2秒ごとに機能(console.log文)を実行する方法の例を示します。ボタンをクリックするとタイマーがリセットされ、再度ログを開始する前にもう2秒間経過する必要があります。あなたは、実際に起こる必要がある作業に合うようにこれを適応させることができます。

var currentTimeoutId; 
 
function resetTimeout() { 
 
    clearTimeout(currentTimeoutId); 
 
    currentTimeoutId = setTimeout(function() { 
 
    console.log('Too Late!'); 
 
    resetTimeout(); 
 
    }, 2000); 
 
} 
 

 
resetTimeout(); 
 
document.getElementById('demo').onclick = function() { 
 
    resetTimeout(); 
 
};
<button id="demo">Click Me Or Else I'll Log Something!</button>

+0

ありがとうございます!私はsetTimeout()を試していましたが、正しく使用する方法を理解できませんでした。どうも! –