kostenloser Webspace werbefrei: lima-city


JavaScript Zähler

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    k****m

    Hallo,

    Ich möchte auf meiner Seite ein Skript einfügen, das von einen bestimmten wert(z.b. 120) jede Sekunde eine Zahl abzieht.
    Wenn es auf 0 gekommen ist soll das Skript auch bei 0 bleiben.

    Ich bin nicht wirklich gut in JavaScript, aber ich hab es trotzdem mal versucht zu realisieren:
    <script language="javascript">
    var sekunde = 120;
    while(sekunde != 0)
    {
       sekunde--;
       document.write(sekunde);
    }
    </script>


    Leider funktioniert das ganze nicht so.
    Kann mir jemand villeicht ein funktionierendes Skript schreiben?
    Wäre sehr hilfreich.

    MfG
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Also, ich will dir kein neues Script schreiben, aber ich kann dir sagen, warum es nicht geht:

    Die while-Schleife interessiert sich nicht dafür ob du Sekunden oder sonst was runter zählst. Die versucht einfach die Schleife schnellstmöglich durchzu bekommen und das passiert normalerweise befor du überhaupt den Countdown wahrnehmen könnest.

    Lösen kannst du das mit der funktion setTimeout(). Weiteres dazu kannst du in einer JavaScript-Referenz deiner Wahl nachlesen.
  4. Bei Google finden sich dazu eine Menge passender Lösungsansätze.
  5. <body>
    <script language="javascript">
    var dauer=10; //Sekunden
    var i=0;
    var timer = window.setInterval("zaehle()",1000); //1000 Millisekunden
    
    function zaehle() {
     document.getElementById("zahl").firstChild.data=dauer-i; //Zahlenwert neu schreiben
     i++;
     if(i > dauer){ //Ende bei 0
      window.clearInterval(timer); //Timer stoppen
     }
    }
    </script>
    <div id="zahl">10</div>
    </body>

    Probier es mal damit!
    Ich denke, es ist genau das was du brauchst.
  6. Autor dieses Themas

    k****m

    robin schrieb:
    <body>
    <script language="javascript">
    var dauer=10; //Sekunden
    var i=0;
    var timer = window.setInterval("zaehle()",1000); //1000 Millisekunden
    
    function zaehle() {
     document.getElementById("zahl").firstChild.data=dauer-i; //Zahlenwert neu schreiben
     i++;
     if(i > dauer){ //Ende bei 0
      window.clearInterval(timer); //Timer stoppen
     }
    }
    </script>
    <div id="zahl">10</div>
    </body>

    Probier es mal damit!
    Ich denke, es ist genau das was du brauchst.


    Vielen Vielen Dank!
    Endlich funktioniert es!
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!