Das JavaSript leitet abhängig vom Datum auf eine von 7 HTML-Dateien für den jeweiligen Wochentag um.
Für jeden Wochentag muss demnach eine Datei vorhanden sein. Achten sie bitte auf Kleinschrift der Dateinamen und auf die Dateiklasse "htm" / "html". Ich habe "htm" festgelegt! Das Script verwendet Dateinamen in genau dieser Schreibweise:
sonntag.htm
montag.htm
dienstag.htm
mittwoch.htm
donnerstag.htm
freitag.htm
samstag.htm
Die Startdatei leitet weiter
Eine Startdatei, 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 7 Zieldateien.
Insgesamt benötigen sie 8 Dateien, 7 für die Wochentage und eine Startdatei ohne Inhalt, die sofort auf die Tagesdatei umleitet. Die Startdatei ist also bis auf das Script im HEAD leer.
In den Body könnten sie eine kurze Nachricht wie "Sie werden zur Tagesdatei weitergeleitet" notieren. Die meißten Besucher werden diese Nachicht sicher nicht sehen, weil die Zeitspanne zu kurz ist. Lediglich bei niedrigen Verbindungsgeschwindigkeiten, oder wenn das Netz wieder einmal 'Schluckauf' hat, würde der Seitenbesucher durch die Nachricht die Gewissheit haben, das gerade etwas geschieht.
Eine 8. Datei also wird als Startseite benötigt. Im Head-Bereich dieser Startdatei wird das JavaScript eingetragen. (Textdatei des Scripts oben)
Erklärung
Um die Dateinamen in deutsch zu generieren soll dem numerischen Wert der JavaScript- Wochentagsprüfung eine deutsche Wochentagsbezeichnung zugeordnet werden. Die 7 Texte werden in einem Register abgelegt. In einem Array werden also 7 Inhalte abgelegt (Wochentage)
Das aktuelle Systemdatum wird in die Variable "today" geschrieben
var today = new Date();
Der numerische Wert für den Wochentag wird ermittelt, das ergibt für heute:
document.write(today.getDay()+1);
Der Variablen "day" wird das entsprechende Element des Arrays zugeodnet,
das ist für heute das . Element (0 = Sonntag, 1 = Montag, ...)
var day = DOWArray[today.getDay()+1];
Der Inhalt der Variablen day
und der String ".htm" wird zusammengefügt,
das ergibt für heute: So, damit ist der Dateiname für heute schon 'hergestellt' worden. Nun muss nur noch zu dieser Datei umgeleitet werden.
Die Datei mit dem ermittelten Namen
soll dann hier, an dieser Stelle (Location) angezeigt werden. Das lösen wir mit der Anweisung
window.location = day + ".htm";
Das Script im Head der Startdatei:
(siehe Link zur Textdatei oben)
<script type="text/javascript" language="JavaScript">
<!--
function initArray() {
this.length = initArray.arguments.length;
for (var i = 0; i < this.length; i++)
this[i+1] = initArray.arguments[i];
}
var DOWArray = new
initArray("sonntag","montag","dienstag",
// Zeilenumbruch entfernen
"mittwoch","donnerstag","freitag","samstag");
var today = new Date();
var day = DOWArray[today.getDay()+1];
window.location = day + ".htm";
// End -->
</script>