Event überprüfen

Status
Dieses Thema wurde gelöst! Zur Lösung gehen…
Es müsste irgendwas im eventListener eingebaut werden, dass nach jedem Klick eine laufende Zeitabfrage startet und dann nach 5 Sekunden eine Meldung generiert.

Wie man das macht, dass kenn ich nicht
Das kannst Du doch genau so mit setTimeout machen?
 
ich habe hier ein kleines Beispiel :
Code:
<!DOCTYPE html>
<html>
<body>

<button id="myBtn">Try it</button>

<script>
  var zaehler=0;
  document.getElementById("myBtn").addEventListener("click", function(){
  zaehler++;
  console.log(" Zähler " + zaehler);
  if (zaehler==4){console.log( "Ende erreicht")};
});
</script>

</body>
</html>

Wie kann man hier mit setTimeout erreichen, dass , wenn zaehler ==3 getippt wurde und der 4. click ansteht aber nicht erfolgt, nach 5 Sekunden eine Meldung kommt, dass der 4. Click noch nicht erfolgt ist.
 
In etwa so sollte es funktionieren:
Code:
    <button id="myBtn">Try it</button>

    <script>
        var zaehler = 0, timer;
        timer = setTimeout(function () {
            console.log("Zeitablauf für Klick " + (zaehler + 1));
        }, 5000);
        document.getElementById("myBtn").addEventListener("click", function () {
            zaehler++;
            console.log(" Zähler " + zaehler);
            clearTimeout(timer);
            if (zaehler < 4) {
                timer = setTimeout(function () {
                    console.log("Zeitablauf für Klick " + (zaehler + 1));
                }, 5000);
            }
            if (zaehler == 4) { console.log("Ende erreicht") };
        });
    </script>
 
Status
Dieses Thema wurde gelöst! Zur Lösung gehen…
Zurück