The timer should be counted after the last moment of pressing the keyboard or mouse. Tell me how to make it simple and enough?

var timeoutID1; //Ρ‚ΡƒΡ‚ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π°ΠΆΠ°Ρ‚Π° Π»ΠΈ клавиша Π½Π° ΠΊΠ»Π°Π²Π΅ ΠΈΠ»ΠΈ Π½Π° ΠΌΡ‹ΡˆΠΊΠ΅ if(Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅){ //ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° установлСн Π»ΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€, Ссли установлСн ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ if(timeoutID1){ clearTimeout(timeoutID1); timeoutID1 = setTimeout(searchExecutor, 30000); } } 

Thank!

    2 answers 2

     var timer, counterVal = 1; function counterStart() { if (timer) { // ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° наличия Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° clearInterval(timer); // сброс Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, Ссли ΠΎΠ½ ΡƒΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ console.log('reset'); } else { console.log('start'); } counterVal = 1; timer = setInterval(function() { console.log(counterVal++); }, 1000); } window.addEventListener('click', counterStart); // слСТка Π·Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ ΠΌΡ‹ΡˆΠΊΠΈ window.addEventListener('keypress', counterStart); // слСТка Π·Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ клавиши 

      You are on the right track, you need to track click and click events:

       let timer = null, time = 1000; function end(){ console.info('ΠŸΡ€Π΅Π²Ρ‹ΡˆΠ΅Π½ Π»ΠΈΠΌΠΈΡ‚ бСздСйствия!'); document.removeEventListener('keydown', activity); document.removeEventListener('click', activity); } function activity(){ clearInterval(timer); timer = setTimeout(_ => end(), time); } document.addEventListener('keydown', activity); document.addEventListener('click', activity); activity();