Aber macht das:
while(startDatum<zielDatum) {
monate++;
startDatum.setMonth(startDatum.getMonth()+1);
}
startDatum.setMonth(startDatum.getMonth()-1);
monate--;
> nicht genau die Überprüfung?
Gegeben sind:
startDatum = 23. Januar 2012 17:41 (jetzt)
zielDatum = 20. Januar 2012 0:00
Dann fragst du ab:
`if(startDatum<zielDatum) {`{:.language-javascript}
Diese Bedingung ist nicht erfüllt. Else-Zweig wird ausgeführt:
~~~javascript
else document.countdownform.countdowninput.value=
"0 Jahre, 0 Monate, 0 Tage, 0 Stunden, 0 Minuten und 00 Sekunden";
So richtig verstehe ich deinen Code nicht, denn für einen Countdown muss das startDatum (heute) natürlich zeitlich vor dem zielDatum liegen. Dein Code dreht das irgendwie um, indem er das startDatum weiter in die Vergangenheit legt, anstatt das zielDatum korrekt in der Zukunft zu verorten.
Mathias