Uhrzeitweiche 01 - Tageszeitabhänge Umleitung
Sie möchten abhängig von der Uhrzeit sofort auf eine bestimmte Datei umleiten bzw. eine bestimmte HTML-Datei anzeigen lassen. Eine Version die lediglich 2 Zeitbereiche des Tages unterscheidet, finden sie hier.
Es werden 2 Zieldateien benötigt:
- eine Datei für den ersten Zeitabschnitt
- eine Datei für den zweiten Zeitabschnitt
Funktion
Eine Startdatei die wie eine 'Weiche' funktioniert, deren Zweck es lediglich ist die Umleitung zu organisieren, beinhaltet das JavaScipt mit der Berechnungsfunktion und der Weiterleitung.
Genau diese Datei wird aufgerufen und organisiert alles Weitere. Auf Grund der Geschwindigkeit mit der das alles geschieht. Wird der Besucher ihrer Seiten diese (ansonsten leere) Datei nicht wirklich sehen. Er sieht eine der beiden Zieldateien.
Die Startdatei leitet weiter
Insgesamt benötigen sie 3 Dateien, 2 als Weiterleitungsziel und eine Startdatei ohne Inhalt, die sofort auf die Zieldatei umleitet. Die Startdatei ist also bis auf das Script im HEAD leer.
In den Body könnten sie eine kurze Nachricht wie "Sie werden weitergeleitet" notieren. Die meißten Besucher werden diese Nachicht sicher nicht sehen, weil die Zeitspanne zu kurz ist. Lediglich bei langsamen Verbindungsgeschwindigkeiten, oder wenn das Netz wieder einmal 'Schluckauf' hat, würde der Seitenbesucher durch die Nachricht die Gewissheit haben, das gerade etwas geschieht.
Eine 3. Datei also wird als Startseite benötigt. Im Head-Bereich dieser Startdatei wird das JavaScript eingetragen. (Textdatei des Scripts oben)
Aufgabe des Scripts
Vor und nach 16 Uhr eine bestimmte Datei anzeigen bzw. dorthin umleiten.
wenn kleiner 16 dann ... sonst
<script type="text/javascript" language="JavaScript">
<!--
var Heute = new Date();
var Zeit=Heute.getHours();
if(Zeit < 16) {
this.location.href="vor16.htm";
} else {
this.location.href="ab16.htm";
}
//-->
</script>
Erklärung
Eine Kopie des Objekts 'Date()', das Informationen zu Datum und Zeit beinhaltet, wird erstellt und in die Variable 'Heute' geschrieben.
var Heute = new Date();
Aus 'Heute' wird der Teil für die aktuelle Stunde ermittelt und in die Variable "Zeit" geschrieben.
var Zeit=Heute.getHours();
Mit einer "IF - ELSE" Anweisung wird geprüft, ob der ermittelte Wert kleiner als die Vorgabe ist und der entsprechende Teil der Anweisung wird ausgeführt.
Demo:
Zur Anpassung folgende Änderungen im Aufruf:
| Element |
im Script
|
hier im Beispiel |
ersetzen mit |
| Uhrzeit |
if(Zeit < 16) |
16 |
Zahl |
|
Zeitspanne
Wenn sie allerdings nicht eine bloße Vorher- / Nachher-Weiche für eine bestimmte Uhrzeit einrichten, sondern eine Zeitspanne während des Tages z.B. 10 bis 18 Uhr festlegen möchten, wird das ein wenig komplizierter. Ein JavaScript für eine solche Unterscheidung finden sie:
Beispiel Uhrzeitweiche 02

datumsabhängige Umleitung - vor / während / nach
datumsabhängige Textausgabe - vor / während / nach
tageszeitabhängige Textausgabe (4 uhrzeitabhängige Texte)
|