Bild wechsel mit Javascript?

2 Antworten

1.Stelle sicher, dass die Bilder (bild1.png, etc.) im richtigen Verzeichnis sind. Wenn nicht, musst du die URL anpassen, z. B.

<img src="resources/images/bild1.png">

2.Das Generieren der Zufallszahl funktioniert nicht, wenn du nicht rundest. Math.random() generiert schließlich eine lange Kommazahl. Für eine natürliche Zahl zwischen 1 und 3 kannst du folgenden Code verwenden:

var rand = 1 + (Math.random() * 3) | 0;

Hinweis: Das " | 0 " am Ende rundet ab. Stattdessen kann auch Math.floor() verwendet werden.

3.Verwende NICHT document.write()! Wenn du kein 30 Jahre altes Online-Tutorial verwendet hast, wurdest du sicher bereits darauf hingewiesen, dass document.write() unter allen Umständen vermieden werden sollte. Setze stattdessen eine ID in deiner Website, z.B.

<div id="random-image-container"></div>

In einem <script> am Ende deines <body>-Elements kannst du das Element folgendermaßen auswählen und das Bild einfügen:

var imgDiv = document.getElementById("random-image-container");
imgDiv.innerHTML = "<img src='bild" + rand + ".png'>";

oder, falls du jQuery verwendest:

var imgDiv = $("#random-image-container");
imgDiv.html("<img src='bild" + rand + ".png'>");

4.Jedes Bild sollte ein alt-Attribut haben, das das Bild beschreibt! Beispiel:

<img src="bild1.png" alt="Kohlenstoffkreislauf">

Der Grund hierfür ist, dass zum Beispiel auch Blinde und Sehbehinderte im Web surfen wollen, und die können Bilder nicht sehen, sie können sich aber die im alt-Attribut gespeicherte Beschreibung vorlesen lassen.

Woher ich das weiß:Studium / Ausbildung – Informatikstudium
var image = images[Math.floor(Math.random()*images.length)];

Exodzn 
Fragesteller
 20.05.2018, 22:28

Danke für die schnelle antwort. Allerdings besteht der Fehler das er die Bilder nicht anzeigen kann.

0
doesanybodyknow  20.05.2018, 22:34
@Exodzn
images = [];

images.push("bild1.png");

images.push("bild2.png");

images.push("bild3.png");

var image = images[Math.floor(Math.random()*images.length)];

document.write("<img src=" + image + "/>");


0