Hi, also ich habe ein eigentlich super funktionierendes Script um auf einer HP einen Countdownzähler laufen zu lassen. Das Problem is´t, wenn der Countdown beendet ist sollte eine Nachricht angezeigt werden. Leider tut der Zähler nach dem Aktuallisieren so, als ob der Countdown noch einen Tag weiter gehen würde. Icvh hoffe das war einigermaßen verständlich. Hier der Code. MFG. Gallimimus:
----------
<html>
<head>
<title>Countdown</title>
<script language="JavaScript">
actionDateTime = new Date(2006,7,02,00,00,00);
actionText = "Countdown beendet";
function countdown() {
nowDateTime = new Date();
var timeDifference = Math.floor(actionDateTime.getTime()/1000 - nowDateTime.getTime()/1000);
if (timeDifference == 0) {
window.document.displayForm.display.value=actionText;
} else {
var timeLeftDisplay;
var daysLeft = Math.floor(timeDifference / 86400);
timeDifference -= Math.floor(timeDifference / 86400) * 86400;
var hoursLeft = Math.floor(timeDifference / 3600);
timeDifference -= Math.floor(timeDifference / 3600) * 3600;
var minLeft = Math.floor(timeDifference / 60);
timeDifference -= Math.floor(timeDifference / 60) * 60;
var secLeft = timeDifference;
if (daysLeft > 0) {
timeLeftDisplay = + daysLeft + " Tage, ";
timeLeftDisplay += hoursLeft + " Stunden, ";
timeLeftDisplay += minLeft + " Minuten und ";
timeLeftDisplay += secLeft + " Sekunden";
} else {
if (hoursLeft > 0) {
timeLeftDisplay = + hoursLeft + " Stunden, ";
timeLeftDisplay += minLeft + " Minuten und ";
timeLeftDisplay += secLeft + " Sekunden";
} else {
if (minLeft > 0) {
timeLeftDisplay = + minLeft + " Minuten und ";
timeLeftDisplay += secLeft + " Sekunden";
} else {
if (secLeft > 0) {
timeLeftDisplay = + secLeft + " Sekunden";
}}}}
window.document.displayForm.display.value = timeLeftDisplay;
window.setTimeout('countdown()',1000);
}}
</script>
</head>
<body onLoad="countdown()" bgcolor="#3c5573">
<center>
<form name="displayForm">
<input type="text" name="display" size="50">
</form>
</center>
</body></html>
----------
----------
<html>
<head>
<title>Countdown</title>
<script language="JavaScript">
actionDateTime = new Date(2006,7,02,00,00,00);
actionText = "Countdown beendet";
function countdown() {
nowDateTime = new Date();
var timeDifference = Math.floor(actionDateTime.getTime()/1000 - nowDateTime.getTime()/1000);
if (timeDifference == 0) {
window.document.displayForm.display.value=actionText;
} else {
var timeLeftDisplay;
var daysLeft = Math.floor(timeDifference / 86400);
timeDifference -= Math.floor(timeDifference / 86400) * 86400;
var hoursLeft = Math.floor(timeDifference / 3600);
timeDifference -= Math.floor(timeDifference / 3600) * 3600;
var minLeft = Math.floor(timeDifference / 60);
timeDifference -= Math.floor(timeDifference / 60) * 60;
var secLeft = timeDifference;
if (daysLeft > 0) {
timeLeftDisplay = + daysLeft + " Tage, ";
timeLeftDisplay += hoursLeft + " Stunden, ";
timeLeftDisplay += minLeft + " Minuten und ";
timeLeftDisplay += secLeft + " Sekunden";
} else {
if (hoursLeft > 0) {
timeLeftDisplay = + hoursLeft + " Stunden, ";
timeLeftDisplay += minLeft + " Minuten und ";
timeLeftDisplay += secLeft + " Sekunden";
} else {
if (minLeft > 0) {
timeLeftDisplay = + minLeft + " Minuten und ";
timeLeftDisplay += secLeft + " Sekunden";
} else {
if (secLeft > 0) {
timeLeftDisplay = + secLeft + " Sekunden";
}}}}
window.document.displayForm.display.value = timeLeftDisplay;
window.setTimeout('countdown()',1000);
}}
</script>
</head>
<body onLoad="countdown()" bgcolor="#3c5573">
<center>
<form name="displayForm">
<input type="text" name="display" size="50">
</form>
</center>
</body></html>
----------
Hi, weis vileicht jemand wie ich denn Fehler beheben kann? Wäre echt nett.
THX
MFG. Gallimimus
THX
MFG. Gallimimus
Ich versteh deinen Fehler nicht so ganz. Ich seh im Skript nur ein paar kleine Definitionsfehler. Die dürften allerdings nicht ausschlaggebend für dein Problem sein :-)
Sorry, das ich mich erst jetzt wiedre melde. Danke für die Antwort. Ich bin um jeden verbesserungs Vorschlag dankbar. Ich bae das Script auch nicht selber geschrieben. Das Problem liegt daran, dass wenn der Countdown beendet ist zwar der Aktion Text angezeigt wird, aber nach der nächsten Aktuallisierung tut der Zähler als ob der Countdown noch einen Tag weiter geht. Das soll er aber nicht, sondern schön braf weiter den Text anzeigen, bis ich das Datum auf eines in der Zukunft verstelle.
MFG. Felidae
MFG. Felidae
Logge dich ein um einen Beitrag zu schreiben.