Countdown

  • JavaScript

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von StarGate01.

    Hallo Leute,

    Ich habe mir mit JS einen kleinen Countdown geschrieben.

    Alles schön und gut.

    Jedoch habe ich gerade das Problem, das er nicht anfängt zu zählen.

    Quellcode

    1. <script language="JavaScript">
    2. // Ziel-Datum in MEZ
    3. date = new Date()
    4. jr = date.getFullYear;
    5. ta = date.getday;
    6. std = date.getHours;
    7. mon = date.getMonth;
    8. min = date.getMinutes;
    9. sec = date.getSeconds;
    10. var jahr=jr, monat=mon, tag=ta, stunde=std, minute=min, sekunde=sec;
    11. var zielDatum=new Date(jahr,monat,tag+1,std,minute,sekunde);
    12. function countdown() {
    13. startDatum=new Date(); // Aktuelles Datum
    14. // Countdown berechnen und anzeigen, bis Ziel-Datum erreicht ist
    15. if(startDatum<zielDatum) {
    16. var jahre=0, monate=0, tage=0, stunden=0, minuten=0, sekunden=0;
    17. // Jahre
    18. while(startDatum<zielDatum) {
    19. jahre++;
    20. startDatum.setFullYear(startDatum.getFullYear()+1);
    21. }
    22. startDatum.setFullYear(startDatum.getFullYear()-1);
    23. jahre--;
    24. // Monate
    25. while(startDatum<zielDatum) {
    26. monate++;
    27. startDatum.setMonth(startDatum.getMonth()+1);
    28. }
    29. startDatum.setMonth(startDatum.getMonth()-1);
    30. monate--;
    31. // Tage
    32. while(startDatum.getTime()+(24*60*60*1000)<zielDatum) {
    33. tage++;
    34. startDatum.setTime(startDatum.getTime()+(24*60*60*1000));
    35. }
    36. // Stunden
    37. stunden=Math.floor((zielDatum-startDatum)/(60*60*1000));
    38. startDatum.setTime(startDatum.getTime()+stunden*60*60*1000);
    39. // Minuten
    40. minuten=Math.floor((zielDatum-startDatum)/(60*1000));
    41. startDatum.setTime(startDatum.getTime()+minuten*60*1000);
    42. // Sekunden
    43. sekunden=Math.floor((zielDatum-startDatum)/1000);
    44. // Anzeige formatieren
    45. (jahre!=1)?jahre=jahre+" Jahre, ":jahre=jahre+" Jahr, ";
    46. (monate!=1)?monate=monate+" Monate, ":monate=monate+" Monat, ";
    47. (tage!=1)?tage=tage+" Tage, ":tage=tage+" Tag, ";
    48. (stunden!=1)?stunden=stunden+" Stunden, ":stunden=stunden+" Stunde, ";
    49. (minuten!=1)?minuten=minuten+" Minuten und ":minuten=minuten+" Minute und ";
    50. if(sekunden<10) sekunden="0"+sekunden;
    51. (sekunden!=1)?sekunden=sekunden+" Sekunden":sekunden=sekunden+" Sekunde";
    52. document.countdownform.countdowninput.value=
    53. jahre+monate+tage+stunden+minuten+sekunden;
    54. setTimeout('countdown()',200);
    55. }
    56. // Anderenfalls alles auf Null setzen
    57. else document.countdownform.countdowninput.value=
    58. "0 Jahre, 0 Monate, 0 Tage, 0 Stunden, 0 Minuten und 00 Sekunden";
    59. }
    60. </script>


    das ganze lass ich mir in HTML Ausgeben:

    HTML-Quellcode

    1. <body onload="countdown()">
    2. <form name="countdownform">
    3. <p>
    4. <input size="75" name="countdowninput">
    5. </p>
    6. </form>
    7. </body>


    Fehler bekomme ich von Firebug keine ausgegeben