Datum-Countdown
Hans
- javascript
Hi,
ich suche einen Countdown, der Tage, Stunden und Minuten runterzählt. Bei Google hab ich einen gefunden, der allerdings auch Sekunden anzeigt. Ich hab leider gar keine Ahnung von Java Script, also kann ich das auch nicht einfach umschreiben (wenn ich überall Sekungen rauslösche gehts nimmer...).
Könntet ihr diesen Quelltext vielleicht so ändern, das keine Jahre, Monate und Sekunden mehr angezeigt werden?
Vielen Dank
Hans
<html>
<head>
<title>Datum-Countdown mit JavaScript</title>
<script language="JavaScript">
// Ziel-Datum in MEZ
var jahr=2222, monat=2, tag=22, stunde=22, minute=22, sekunde=22;
var zielDatum=new Date(jahr,monat-1,tag,stunde,minute,sekunde);
function countdown() {
startDatum=new Date(); // Aktuelles Datum
// Countdown berechnen und anzeigen, bis Ziel-Datum erreicht ist
if(startDatum<zielDatum) {
var jahre=0, monate=0, tage=0, stunden=0, minuten=0, sekunden=0;
// Jahre
while(startDatum<zielDatum) {
jahre++;
startDatum.setFullYear(startDatum.getFullYear()+1);
}
startDatum.setFullYear(startDatum.getFullYear()-1);
jahre--;
// Monate
while(startDatum<zielDatum) {
monate++;
startDatum.setMonth(startDatum.getMonth()+1);
}
startDatum.setMonth(startDatum.getMonth()-1);
monate--;
// Tage
while(startDatum.getTime()+(24*60*60*1000)<zielDatum) {
tage++;
startDatum.setTime(startDatum.getTime()+(24*60*60*1000));
}
// Stunden
stunden=Math.floor((zielDatum-startDatum)/(60*60*1000));
startDatum.setTime(startDatum.getTime()+stunden*60*60*1000);
// Minuten
minuten=Math.floor((zielDatum-startDatum)/(60*1000));
startDatum.setTime(startDatum.getTime()+minuten*60*1000);
// Sekunden
sekunden=Math.floor((zielDatum-startDatum)/1000);
// Anzeige formatieren
(jahre!=1)?jahre=jahre+" Jahre, ":jahre=jahre+" Jahr, ";
(monate!=1)?monate=monate+" Monate, ":monate=monate+" Monat, ";
(tage!=1)?tage=tage+" Tage, ":tage=tage+" Tag, ";
(stunden!=1)?stunden=stunden+" Stunden, ":stunden=stunden+" Stunde, ";
(minuten!=1)?minuten=minuten+" Minuten und ":minuten=minuten+" Minute und ";
if(sekunden<10) sekunden="0"+sekunden;
(sekunden!=1)?sekunden=sekunden+" Sekunden":sekunden=sekunden+" Sekunde";
document.countdownform.countdowninput.value=
jahre+monate+tage+stunden+minuten+sekunden;
setTimeout('countdown()',200);
}
// Anderenfalls alles auf Null setzen
else document.countdownform.countdowninput.value=
"0 Jahre, 0 Monate, 0 Tage, 0 Stunden, 0 Minuten und 00 Sekunden";
}
</script>
</head>
<body onload="countdown()">
<form name="countdownform">
<p>
<input size="75" name="countdowninput">
</p>
</form>
</body>
</html>
Moin
was dir angezeigt wird ist in diesen beiden Zeilen festgelegt:
document.countdownform.countdowninput.value=
jahre+monate+tage+stunden+minuten+sekunden;
wenn du nur Tage und Stunden angeueigt haben möchtest würde das so aussehen:
document.countdownform.countdowninput.value=tage+stunden;
Allerdings solltest du dich vielleicht mal selbst mit JavaScript beschäftigen, du könntest dann sicherlich bald ein besseres Script schreiben.
Gruß
rfb
Hi,
was dir angezeigt wird ist in diesen beiden Zeilen festgelegt:
document.countdownform.countdowninput.value=
jahre+monate+tage+stunden+minuten+sekunden;wenn du nur Tage und Stunden angeueigt haben möchtest würde das so aussehen:
document.countdownform.countdowninput.value=tage+stunden;
Allerdings muesste man dann fuer jedes Jahr noch 365 bzw 366 zu den Tagen dazuaddieren.
mfG,
steckl