Countdown Timer bei Click zurücksetzen

tfact129

Grünschnabel
Hallo,
ich würde gerne den folgenden Countdown auf einer Seite integrieren, so dass er sich immer bei einem Click des Users auf der Seite auf seinen Ursprungswert zurückstellt und von neuem beginnt. Click soll heißen, nicht nur auf einen Link, sondern generell auf die Seite. Lässt sich das machen?
Javascript:
<div class="countdown">1000</div>

<script>
$(document).ready(function() {

  // Function to update counters on all elements with class counter
  var doUpdate = function() {
    $('.countdown').each(function() {
      var count = parseInt($(this).html());
      if (count !== 0) {
        $(this).html(count - 1);
      }
    });
  };

  // Schedule the update to happen once every second
  setInterval(doUpdate, 1000);
});
</script>
 
Der Counter soll starten wenn man die Seite betretten tut , und beim irgendein Click auf der Seite soll der Counter wieder vom 0 Anfangen ?
Dann versuche es doch mal so
Javascript:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<div class="countdown">0</div>
<script>
$(document).ready(function() {
    var timer;
    var count=0;
    $('*').click(function(){
          clearTimeout(timer);
          go(count)
    });
    function go(count){
         timer=setTimeout(function() {
             $('.countdown').html(count);
             count++;
             go(count);
         }, 1000);
    }
    go(0);// den löschen wenn er beim betretten der Seite nicht Starten soll , sondern erst beim clicken
});
</script>
Hier Live Demo

Link zur Lösung
 
Zuletzt bearbeitet:
Hallo,
das hat mir schon mal sehr weitergeholfen. Ich hab das noch so angepasst, dass es rückwärts zählt. Nun sollte der Zähler bei 0 stehenbleiben und eine Funtion aufgerufen werden. Bei mir läuft jedoch der Countdown ins Minus.
 
Zurück