seber-rider: Countdown

Beitrag lesen

Kannst Du evtl. ein Blick über mein Script werfen, wo der Fehler liegen könnte?

Hallo,

Das Problem lag darin, dass zum Beispiel die Tage nur angezeigt werden, wenn der Rest >= 86400 ist, wenn der Rest kleiner ist, wurde NICHTS angezeigt, daher brauchst Du für jede IF-Abfrage auch einen ELSE-Zweig, der dann die Anzeige übernimmt:

  
function CountdownAnzeigen(){  
        var Jetzt = new Date();  
        var Countdown = new Date(CountdownJahr, CountdownMonat-1, CountdownTag, CountdownStunde, CountdownMinute, CountdownSekunde);  
        var MillisekundenBisCountdown = Countdown.getTime()-Jetzt.getTime();  
        var Rest = Math.floor(MillisekundenBisCountdown/1000);  
        var CountdownText = "";  
  
        if(Rest >= 31536000){  
                var Jahre = Math.floor(Rest/31536000);  
                Rest = Rest-Jahre*31536000;  
                CountdownText += Jahre;  
                CountdownText += ( Jahre > 1 || Jahre == 0 ) ? ' Jahre ' : ' Jahr ';  
        } else {  
                CountdownText += '0 Jahre ';  
        }  
  
        if(Rest >= 86400){  
                var Tage = Math.floor(Rest/86400);  
                Rest = Rest-Tage*86400;  
                CountdownText += Tage;  
                CountdownText += ( Tage > 1 || Tage == 0 ) ? ' Tage ' : ' Tag ';  
        } else {  
                CountdownText += '0 Tage ';  
        }  
  
        if(Rest >= 3600){  
                var Stunden = Math.floor(Rest/3600);  
                Rest = Rest-Stunden*3600;  
                CountdownText += ( Stunden >= 10 ) ? '' : '0';  
                CountdownText += Stunden + ':';  
        } else {  
                CountdownText += '00:';  
        }  
  
        if(Rest >= 60){  
                var Minuten = Math.floor(Rest/60);  
                Rest = Rest-Minuten*60;  
                CountdownText += ( Minuten >= 10 ) ? '' : '0';  
                CountdownText += Minuten + ':';  
        } else {  
                CountdownText += '00:';  
        }  
  
        CountdownText += ( Rest >= 10 ) ? '' : '0';  
        CountdownText += Rest;  
  
        document.getElementById('Countdown').innerHTML = CountdownText;  
        window.setTimeout("CountdownAnzeigen()", 1000);  
}