Wochentagsbild 01 1 von 7 (getElementByID)
Das Bild des Wochentags anzeigen. Sie halten 7 Grafiken bereit die abhängig vom aktuellen Wochentag angezeigt werden sollen. Zusätzlich wird durch Zuordnung der 'title'-Informationen einer von 7 MouseOver-Texten angezeigt.
|
|
Eine von 7 Grafiken wochentagsabhängig anzeigen
UPDATE 25.07.2010 Änderung des Scriptcodes + zeitverzögerter Aufruf der Funktion
Sie möchten täglich ein anderes Bild aus einer Auswahl von 7 Bildern anzeigen. Das Script ermittelt aus dem Systemdatum den aktuellen Wochentag und generiert daraus die Bild-Url.
Zu jeder Grafik wird der zugehörige 'title'-Text angezeigt, der in einem Register abgelegt wurde.
<img title="xxx" src="bild03.jpg" ...
Grafik für diesen Wochentag
|
|
|
Abhängig vom aktuellen Wochentag wird eine von 7 Grafiken angezeigt. Dazu wird eine Platzhaltergrafik durch ein Script gegen die betreffende Grafik ausgetauscht. Aus dem aktuellen Datum wird der Wochentagswert ermittelt.
|
Vorgaben
1) alle 7 Bilder sollten die gleichen Abmessungen haben
2) alle 7 Bilder stehen im gleichen Verzeichnis
3) alle Dateibezeichnungen enden mit einer fortlaufenden Zahl von 1 - 7
4) die Grafikformate aller Bilder sind identisch (GIF, JPG, PNG)
Beispiele:
|
images/bild1.gif
|
images/bild2.gif
|
images/bild3.gif
|
...
|
images/bild7.gif
|
|
Grafik1.jpg
|
Grafik2.jpg
|
Grafik3.jpg
|
...
|
Grafik7.jpg
|
|
aufnahme001.jpg
|
aufnahme002.jpg
|
aufnahme003.jpg
|
...
|
aufnahme007.jpg
|
Aufwand
- 7 Grafiken mit identischen Bildmaßen herstellen
- Script in den HEAD-Bereich kopieren
- Anpassungen eintragen
- Grafik im Body mit Attribut id="Tagesbild" notieren
Verwendete Technik
Um eine wochentagsabhängige Grafik anzeigen zu lassen, wird hier die JavaScript-interne Funktion getDay() verwendet. Diese Funktion ermittelt aus einem Datumswert den aktuellen Wochentagswert. JavaScript liefert als Rückgabe einen Zahlenwert von 0 bis 6.
0 für Sonntag, 1 für Montag, 2 für Dienstag, ...
var VariablenName = DATUMSWERT.getDay();
Mit diesem Zahlenwert arbeite ich in meinem Script. Der Rückgabewert wird zur Weiterverarbeitung in die Variable geschrieben.
Um für Sonntags den Wert 7 zu erhalten, was die Bildzuordnug vereinfacht, untersuche ich den Rückgabewert und ersetze den Wert Null (0) gegebenenfalls durch eine 7.
if (VariablenName == 0)
{
VariablenName = 7;
}
URL der Monatsgrafik ermitteln
Die zu Beginn angezeigte Platzhaltergrafik hat eine eindeutige ID. Mittels dieser ID wird das Script die zu tauschende Grafik identifizieren um den Bildtausch einzuleiten.
Die ID ist hier: 'Tagesbild'
Aus dem aktuellen Datum wird der aktuelle Wochentag ermittelt. Das Ergebnis ist eine Ziffer von '0' bis '6'. Der Wert wird der Variablen 'Wochentag' zugeordnet. Für Sonntags wird der Wert 0 durch den Wert 7 ersetzt.
if (Wochentag == 0)
{
Wochentag = 7;
}
var DatumJetzt01 = new Date();
var Wochentag = DatumJetzt01.getDay();
Aus den Vorgaben für den Pfad + dem ersten Teil der URL der Grafiken (BildURL) und der Vorgabe für die Dateiendung (GIF, JPG, PNG) wird die URL der Wochentagsgrafik ermittelt. Der Wert wird der Variablen 'BildURL' zugeordnet.
PfadNameTeil = "bilder/aufnahme0"
Dateiendung = ".jpg"
BildURL = PfadNameTeil + Nummer + Dateiendung;
Zuordnung von URL und Titeltext
Der Dateiname des anzuzeigenden Bildes wurde vom Script ermittelt und wird danach dem Seitenelement (der Platzhaltergrafik) mit der ID="Tagesbild" zugeordnet.
document.getElementById("Tagesbild").src = BildURL;
Ich habe das Script um eine Funktion erweitert. Jetzt wird auch der MouseOver-Titeltext für das angezeigte Bild dynamisch erzeugt. Ein Register das 7 Werte enthält, dient als Ablage für die 7 Texte, die bei MouseOver angezeigt werden. Hier im Beispiel sind dort die Texte für die Tagesbilder abgelegt. Eine Programmzeile des Scripts ordnet dem Bild die 'title-Angaben' abhängig vom aktuellen Wochentag zu.
document.getElementById("Tagesbild").title= Text;
Abhängig vom Einsatzbereich des Scripts können sie die Eintragungen im Array leer lassen oder um eine treffende Bildbeschreibung ergänzen.
Bildtausch-Script im Head
Die Dateinamen für das Beispiel lauten hier:
|
aufnahme001.jpg
|
aufnahme002.jpg
|
aufnahme003.jpg
|
...
|
aufnahme007.jpg
|
Der erste Teil der Dateinamen, gegebenefalls mit Pfadangaben, werden der Variablen 'PfadNameTeil' zugewiesen. Punkt und Dateiendung sind in der Variablen 'Dateiendung' notiert.
PfadNameTeil = "aufnahme0"
Dateiendung = ".jpg"
Das Script setzt diese Segmente und die ermittelte (einstellige) Nummer zu einer gültigen URL zusammen:
<script language="JavaScript" type="text/javascript">
<!--
// ****************** Anpassungen *****************
// hier Dateinameninfo (incl. Pfad) eintragen
// für "grafik-150-001.gif" zum Beispiel "grafik-150-00"
// für "fotos/grafik-150-001.gif" zum Beispiel "fotos/grafik-150-00"
// letzte Ziffer (eine) weglassen
PfadNameTeil = "grafik-150-00"
Dateiendung = ".gif"
// hier Bildtexte eintragen
var Tagestext = new Array();
Tagestext[1]="Grafik für Montag";
Tagestext[2]="Grafik für Dienstag";
Tagestext[3]="Grafik für Mittwoch";
Tagestext[4]="Grafik für Donnerstag";
Tagestext[5]="Grafik für Freitag";
Tagestext[6]="Grafik für Samstag";
Tagestext[7]="Grafik für Sonntag";
// ***********************************************
var DatumJetzt01 = new Date();
var Wochentag01 = DatumJetzt01.getDay();
if (Wochentag01 == 0)
{
Wochentag01 = 7;
}
var Text01 = "";
var BildURL01 = "";
function Titeltext(Nummmer) {
return Tagestext[Nummmer];
}
function BildDesTages01()
{
BildURL01 = PfadNameTeil + Wochentag01 + Dateiendung;
document.getElementById("Tagesbild").src = BildURL01;
Text = Titeltext(Wochentag01);
document.getElementById("Tagesbild").title = Text01;
}
// Der Aufruf erfolgt nach 1500 Millisekunden
setTimeout('BildDesTages01()',1500);
//-->
</script>
Die im Script blau markierten Angaben passen sie entsprechend ihrer Dateinamen an:
Erster Teil des Dateinamens ohne Zahl und den Grafiktyp.
PfadNameTeil = "aufnahme00"
Dateiendung = ".jpg"
Das Script liefert als Ergebnis für dieses Beispiel:
im Body
Das <img>-Tag für die Grafik wird notiert. Die zu Beginn angezeigte Platzhaltergrafik bekommt eine eindeutige ID. Die ID ist hier: 'Tagesbild'
<img id="Tagesbild" src="dateiname.jpg" ... >

Monatsbild 01 - Bild des Monats (1 von 12)
Monatsbild 02 (1 von 12) URLs in einem Array
Grafik aktuelles Sternzeichen (1 von 12)

|