SEO Welten
Buchempfehlungen
|
Clientseitige MöglichkeitenMöglichkeiten zum clientseitigen Austausch von GrafikenÜbersicht / Seite:
Einfacher Austausch mit JavaScriptEin einfacher Austausch von Fotos und sonstigen in einer HTML-Seite eingebundenen
Grafiken, lässt sich, insofern vom Seitenersteller erwünscht, mit JavaScript problemlos realisieren.
Alles, was zur Erfüllung dieser Aufgabenstellung erforderlich ist, umfasst nicht mehr als einen kleinen
Codeschnipsel mit einer Funktion, die sich nach dem Laden des Fensters in einem Browser dank dem Event-Handler
onload selbständig aktiviert. Weiterhin ist es erforderlich, innerhalb des Image-Tags zusätzlich ein id-Attribut
zu notieren. Siehe Beispiel 1 und 2. <img id="quelle" src="bild.jpg" alt="Ein Bild" width="480" height="320"> Die nachfolgende Funktion wird bei onload aufgerufen und wechselt mit Hilfe
einer DOM-Methode den innerhalb des Image-Tags angegebenen Verweis aus, so das ein anderes Bild geladen
wird. <script type="text/javascript"> window.onload = function() { document.getElementById("quelle").src = "gesperrte/landschaft-ohne-quelle.jpg"; } </script> Der Vorteil dieser Methode besteht darin, wer das im Image-Tag angegebene
Bild verlinkt, hat Pech gehabt und bekommt nur ein Bild mit einem Wasserzeichen oder einer Quellenangabe
ausgeliefert, jedoch nicht das Bild, welches die Besucher der Seite sehen, vorausgesetzt JavaScript wurde
im Browser nicht deaktiviert. Der Nachteil, diese Methode ist zwar recht einfach, jedoch auch ein wenig
plump. Etwas aufwendiger, dafür weniger plump ist die nachfolgende Funktion mit Überblendeffekt. Funktion mit ÜberblendeffektUm mit JavaScript und CSS einen Überblendeffekt zu erreichen, müssen die
Grafiken zuerst mit CSS deckungsgleich positioniert werden. CSS bietet unterschiedlichen Möglichkeiten die
Position einzelner Elemente zu bestimmen: Im Beispiel wurde die Positionsart absolute gewählt, da die Stylesheet-Angaben
mit
Um den Effekt zu sehen, muss die Seite neu geladen werden.
Weiterhin ist bei übereinander liegenden Grafiken die Schichtenposition mit
Hilfe des z-index anzugeben. Gelegentlich findet sich in diversen Beispielen ein möglichst hoher Wert für
den z-index, doch ist eine Angabe, wie <div style="width:480px; height:320px"> <img id="quelle1" src="bilder/landschaft-mit-quelle-3.jpg" alt="Ein Bild" width="480" height="320"> <img id="quelle2" src="#" alt="Tauschbild" width="480" height="320" style="display:none"> </div> Im nachfolgenden Listing wurden zuerst zwei Image-Tags in einem
gemeinsamen Bereich notiert, wobei das zweite Image jedoch erst mit einer JavaScript-Funktion geladen
wird. Dabei wird dem Tauschbild ein höherer Wert für den z-index zugewiesen sowie die Style-Eigenschaft
display von "none" auf "inline" geändert. Nun würde eigentlich nur noch das Bild
"landschaft-ohne-quelle.jpg" zu sehen sein. Da aber die Transparenz dieses Bildes anfänglich noch bei
100 % liegt, ist dennoch in der ersten Sekunde nach dem Aufruf der Seite nur das erste Bild zu sehen.
Deckkraft / Transparenz JavaScript-Funktion mit Überblendeffekt: <script type="text/javascript"> "use strict"; var alpha = 0; var bild1 = document.getElementById("quelle1"); var bild2 = document.getElementById("quelle2"); window.onload = function() { bild1.style.position = "absolute"; bild1.style.zIndex = 1; bild2.src = "gesperrte/landschaft-ohne-quelle.jpg"; bild2.style.position = "absolute"; bild2.style.display = "inline"; bild2.style.zIndex = 2; setzeTransparenz(); } function setzeTransparenz() { alpha++; var verblasse; if (alpha <= 100) { verblasse = window.setTimeout("setzeTransparenz()", 80); bild2.style.filter = "alpha(opacity = "+ alpha +")"; bild2.style.opacity = alpha / 100; } else if (alpha > 100) { window.clearTimeout(verblasse); } } </script> Der zeitliche Ablauf bzw. die Zeitdauer des Überblendeffektes kann mit
der Methode setTimeout oder setInterval gesteuert werden. Im Beispiel erfolgt die Steuerung mit
window.setTimeout, wobei die Funktion im Abstand von 80 Millisekunden erneut aufgerufen wird, ehe die
weitere Ausführung mit clearTimeout abgebrochen wird. 100 Aufrufe mal 80 ms ergibt insgesamt eine
Verzögerungszeit von 8 Sekunden, bevor die volle Deckkraft des überlagernden Bildes erreicht ist, wobei
die angegebene Zeit in Millisekunden beliebig angepasst werden kann. Rewrite Regeln « zurück / weiterlesen » Script für Wasserzeichen |
Navigation
Finden und - Optimierung -
Webcoding
Übersicht Web Services Tutorials &
und vieles mehr... XML |