Countdown für Erscheinungstermine eines Magazins

wallis

Mitglied
Für die Homepage unseres Magazins suchen wir einen Countdown,
welcher die Tage zu jedem Erscheinungstermin anzeigt.

Sprich:
Es müsste möglich sein, im Script mehrere Tage anzugeben.
Ist der erste Tag abgelaufen, beginnt der Countdown erneut zu dem
nächsten Datum.

Hat irgendjemand zufällig solche eine Art-Script oder einen Link hierzu?

Vielen vielen Dank für alle Infos...
 
Hi,
ein Anfang wäre Google:
http://www.jjam.de/JavaScript/Datum_Uhrzeit/Countdown.html
HTML:
<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>

denke damit kann man was anfangen
Gruss Tom
 
Hallo !

Das ist ja ein ganz normaler Countdown bis zu einem bestimmten Tag.
Davon habe ich auch schon massig bei Google gefunden.

Ich suche ja einen, bei dem ich mehrere Daten eingeben kann,
die der Countdown nacheinander abarbeitet.

Damit soll die Verwaltung der jeweiligen Erscheinungstermin vereinfacht werden. :)

Gruss...
WALLis
 
Hi !

In unregelmässigen Abständen.

Und genau das wird wohl zum Problem werden... :-/

z.B.
- 27.08.2008
- 30.09.2008
- 22.10.2008
- 12.11.2008
- 04.12.2008
- 18.12.2008

Das wären die Daten für dieses Jahr...
 
Hmm ein Lösungsansatz wäre die Zeiten (am besten/einfachsten im time() format) in einer text datei oder db zu speichern. Bei "klick" wird nachgeschaut welche Zeit in der Datenbank schon "abgelaufen" ist bzw. welche als nächstes kommt und diese dann mithilfe eines normalen Countdownscript dann ausgeben.

mfg Spikaner
 
Zurück