Tobias Kloth: Zufallsbilder

Beitrag lesen

Hallo Macangelo,

ich suche eine möglichst simple Möglichkeit, einen image-tag so auszustatten, das er aus einer Gruppe von Bildern nach dem Zufallsprinzip eins auswählt und einsetzt. Wenn Möglich ohne Datenbank. Wie gesagt, möglichst simple.
Hat jemand eine Idee? Schon mal besten Dank im Voraus.

Mit HTML alleine kommst du - wie N2O schon schrieb - nicht weit. Mit einer beliebigen Programmier-/Scriptsprache z.B. Javascript geht das am einfachsten, wenn du die Dateinamen der Bilder in einem Array speicherst und dann über eine Zufallszahl (gerundet und mit der Anzahl der Bilder-1 multipliziert) auf ein Arrayelement zugreifst. Dann gibst du einfach über document.write() den HTML-Code für das Bild aus und fertig (noscript-Element mit einem statischen Bild für die JS-losen nicht vergessen!). Da ich gestern erst sowas gebastelt habe, ausnahmsweise mal der fertige Code:

<script type="text/javascript">
var bilder = new Array(
    'bootssteg.jpg',
    'drachenboote.jpg',
    'sattelplatz.jpg',
    'vereinsgelaende.jpg',
    'zweierrennen.jpg'
);
var anzahl = bilder.length;
var nr = Math.round(Math.random()*(anzahl-1));
document.write('<p><img src="'+bilder[nr]+'" width="500" alt="" /></p>');
</script>
<noscript>
<p><img src="sattelplatz.jpg" width="500" alt="" /></p>
</noscript>

thoretisch könnte man auch ein Bild einbinden und per document.images[x].src die URL ändern - das hätte aber den Nachteil, dass evtl. zwei Bilder geladen werden müssen.

Grüße aus Nürnberg
Tobias