Tage bis zu einem bestimmten Datum

Moinsens…

Im HTML Bereich hier im Forum hat man mich hierher verwiesen …

Ich hab für meine Seite eine „Vorschaltseite“ gebastelt. (Bitte keine Moralpredigt über das Pro und Kontra einer Vorschaltseite :smile: )

Auf der Seite wird eine Information angezeigt, wie lange es noch bis zu einem bestimmten Event dauert

Diese Seite wird 5 Sekunden lang angezeigt und dann wird automatisch zur eigentlichen Seite weitergeleitet. Das ganze kann man aber auch mit dem Link überspringen.

Der Code sieht so aus:

 
Aktuelle News…
 
Es sind noch 60 Tage bis zu unserem grossen Event
 
Sie werden nach 5 Sek. weitergeleitet. Diese Seite überspringen

 
 
 

Gibt es eine Möglichkeit die Anzahl der Tage auszurechnen und per Variable in Abhängigkeit vom heutigen Datum einzutragen ?? Denn sonst müsste ich jeden Tag den Quellcode bearbeiten. Das muss doch automatisch zu lösen sein, oder ???

Hat jemand eine Idee ??

Gruss Winnie

function updatecountdown() {
var zielzeit = new Date(2011,7,1); // Jahr(2011…) , Monat (0…11) , Tag (1…31)
var eventzeit = zielzeit.getTime() /1000;
var jetztneu = new Date();
var jetztsecunden = jetztneu.getTime() / 1000;
var nowtime = jetztsecunden;
var restzeit = eventzeit-nowtime;
var tage = Math.floor((restzeit/(60*60*24)));
var stunden = Math.floor(((restzeit-(tage*60*60*24))/(60*60)));
var minuten = Math.floor((restzeit-(tage*60*60*24)-(stunden*60*60))/(60));
var secunden = Math.floor((restzeit-(tage*60*60*24)-(stunden*60*60)-(minuten*60)));
var zeitcounter = document.getElementById(„zeitcounter“);
var htmlchange="";
if (tage > 0) {
if (tage > 1) {
htmlchange+=tage+" Tage „;
} else {
htmlchange+=tage+“ Tag „;
}
} else {
htmlchange+=tage+“ Tage „;
}
if (stunden > 0) {
if (stunden > 1) {
htmlchange+=stunden+“ Stunden „;
} else {
htmlchange+=stunden+“ Stunde „;
}
} else {
htmlchange+=stunden+“ Stunden „;
}
if (minuten > 0) {
if (minuten > 1) {
htmlchange+=minuten+“ Minuten „;
} else {
htmlchange+=minuten+“ Minute „;
}
} else {
htmlchange+=minuten+“ Minuten „;
}
if (secunden > 0) {
if (secunden > 1) {
htmlchange+=secunden+“ Secunden";
} else {
htmlchange+=secunden+" Secunde";
}
} else {
htmlchange+=secunden+" Secunden";
}
zeitcounter.innerHTML=" "+htmlchange;
setTimeout(„updatecountdown()“,1000);
}

Hallo,

Auf der Seite wird eine Information angezeigt, wie lange es
noch bis zu einem bestimmten Event dauert

Gibt es eine Möglichkeit die Anzahl der Tage auszurechnen und
per Variable in Abhängigkeit vom heutigen Datum einzutragen ??

Google nach „Javascript date difference“.

Erster Treffer: http://www.javascriptkit.com/javatutors/datedifferen…

Kurzvariante: das eingebaute Date-Objekt benutzen.

Gruesse,
Moritz

Moin,

das ist schon mal super… So ähnlich hatte ich mir das vorgestellt…
Allerdings :

Wenn das Script die genauen Sekunden anzeigt, kann ich dann zusätzlich zum Tag auch die genaue Start zeit angeben ??

Gruss Winnie

Ja, sicher , wenn du denn mal bei selfhtml suchst wirst du das date objekt finden . Nicht so faul sein , sondern mal selber gugen .

Javascript Date

und schon hast du alles was du brauchst.

/*
Update : Anzeige fehler behoben (Tag Stunden Minuten Secunden) für 0 werte

Beispiel :
1 Tag 0 Stunden 0 Minuten 30 Secunden

Besipiel :
1 Stunde 0 Minuten 30 Secunden

Besipiel :
2 Stunden 1 Minute 1 Secunde
*/
function updatecountdown() {
var event = new Date(2011,7,1); // Jahr(2011…) , Monat (0…11) , Tag (1…31)
var ziel = event.getTime() /1000;
var stempel = new Date();
var jetzt = stempel.getTime() / 1000;
var delta = ziel-jetzt;
var tage = Math.floor((delta/(60*60*24)));
var stunden = Math.floor(((delta-(tage*60*60*24))/(60*60)));
var minuten = Math.floor((delta-(tage*60*60*24)-(stunden*60*60))/(60));
var secunden = Math.floor((delta-(tage*60*60*24)-(stunden*60*60)-(minuten*60)));
var zeitcounter = document.getElementById(„zeitcounter“);
var htmlchange="";
var hattage = false;
var hatstunden = false;
var hatminuten = false;
if (tage > 0) {
hattage = true;
if (tage == 1 ) {
htmlchange+=tage+" Tag „;
} else {
htmlchange+=tage+“ Tage „;
}
}
if (stunden > 0 || hattage) {
hatstunden = true;
if (stunden == 1) {
htmlchange+=stunden+“ Stunde „;
} else {
htmlchange+=stunden+“ Stunden „;
}
}
if (minuten > 0 || hatstunden) {
hatminuten = true;
if (minuten == 1) {
htmlchange+=minuten+“ Minute „;
} else {
htmlchange+=minuten+“ Minuten „;
}
}
if (secunden > 0 || hatminuten) {
if (secunden == 1) {
htmlchange+=secunden+“ Secunde";
} else {
htmlchange+=secunden+" Secunden";
}
}
zeitcounter.innerHTML=" "+htmlchange;
setTimeout(„updatecountdown()“,1000);
}