Wir haben nun gelernt, wie JavaScript Inhalte durch das Verändern von CSS verschieben kann. Darüber hinaus können wir auch auf Aktionen des Nutzers reagieren. Dies ist durch das Überwachen von Events möglich.
  Aber was ist, wenn die Reihenfolge der Fotos in unserer Slideshow
  geändert werden soll? ... Das könntest du durch das Editieren der
  <img>-Tags im HTML machen. Gar keine schlechte Idee!
Wir könnten aber auch JavaScript benutzen, um die Fotos neu zu positionieren. Dazu können wir den Inhalt des Dokumentes modifizieren (etwa durch hinzufügen und löschen), so ähnlich wie wir es mit dem CSS auch getan haben.
Doch Vorsicht: JavaScript zu benutzen, nur um clever zu sein, ist in "realen" Webseiten keine gute Idee. Es kann jedoch ein guter Weg sein, um neue Sachen zu lernen. Außerdem gibt es sehr wohl Situationen, in welchen es Sinn macht, den Inhalt der Seite mittels JavaScript zu verändern.Lernen wie man den Inhalt einer Webseite mittels JavaScript verändern kann. Nutze dazu Attribute und Methoden des DOMs.
Öffne deine Slideshow in Chrome und öffne die Konsole.
Hinweis: Da wir die Datei slideshow.js geladen haben,
  existiert eine Referenz zum "Film" über die Variable filmroll. Schreibe
  in die Konsole folgendes:
filmroll.innerHTML
  Kann die Eigenschaft innerHTML der Variable filmroll
  nur gelesen werden? Finde es heraus, in dem du folgendes ausprobierst:
filmroll.innerHTML = "Vergiss nicht: Strings brauchen Anführungszeichen :)"
Natürlich kannst du auch Zahlen benutzen oder Formeln schreiben... falls du willst:
filmroll.innerHTML = 4 + 3 * 111 + 1000
Versuch doch mal einen String (Zeichenkette) mit HTML:
filmroll.innerHTML = "<h1>Whoa!</h1> <p>Was passiert jetzt?</p>"
Wir können auch HTML zum bestehenden HTML hinzufügen! Dazu kann der Operator
+= benutzt werden:
filmroll.innerHTML += "<p>Yeah! Ich sehe Potenzial!</p>"
Versuche doch mal das:
var address = "http://tif.ca/hello.jpg"; var html = "<img src=" + address + ">"; filmroll.innerHTML = html;
  Einer der leichtesten Wege um Inhalt zu einer Webseite hinzuzufügen,
  ist die Nutzung der Eigenschaft innerHTML. Diese existiert auf
  jedem DOM-Element. Da HTML nur Text ist, kannst du mittels innerHTML
  jeden denkbaren Text setzen. Der Browser wird diesen dann rendern.
  Wir können innerHTML sowohl zum Lesen des bestehenden Inhalts
  als auch zum Verändern des Inhalts benutzen. Dabei spielt es keine Rolle,
  ob du den Inhalt löschst, ersetzt oder erweiterst. Alles ist möglich!
  Da wir bereits gelernt haben, wie man Strings "addiert", können
  wir auch HTML erstellen und dieses dann durch setzen von innerHTML
  ausgeben.
Dies ist zwar nicht die einzige Möglichkeit neuen Inhalt zum Dokument hinzuzufügen, heute werden wir diese jedoch ausschließlich benutzen.
Baue das HTML auf Grundlage eines Arrays mit Strings.
Erstelle in slideshow.js ein Array
mit dem Namen photos und speichere die Namen der Bilder darin:
var photos = [ "DATEINAME_DES_ERSTEN_FOTOS", "DATEINAME_DES_ZWEITEN_FOTOS", "DATEINAME_DES_DRITTEN_FOTOS" ];
Benutze die kompletten Dateinamen inkl. Dateierweiterung (.jpg, .gif or .png).
Definiere eine Variable mit dem Namen html und weise ihr einen leeren
  String zu:
var html = "";
  Gehe nun in die Datei index.html und lösche alle Bilder-Tags aus dem Film-<div> (das mit id="the-film-roll") heraus.
  Deine index.html sollte nun so aussehen:
<!doctype html> <head> <title>I ♥ Coding</title> <meta charset="utf-8"> <link rel="stylesheet" href="style.css"> </head> <div class="picture-frame"> <div class="film-roll" id="the-film-roll"> </div> </div> <script src="slideshow.js"></script>
Lade die Seite in Chrome um sicherzustellen, dass alle Bilder verschwunden sind.
  Als nächstes benutzen wir eine for-Schleife, um die Bilder dynamisch 
  hinzuzufügen. Gehe zurück in die slideshow.js und 
  schreibe dort eine for-Schleife, welche über das photos-Array 
  iteriert und jedes mal einen <img>-Tag zur html-Variable 
  hinzufügt:
for (var i = 0; i < photos.length; i++) {
  html += "<img>";
}
  Eine for-Schleife funktioniert ähnlich wie eine while-Schleife, 
  aber die Initialisierung, Veränderung und Überprüfung des Zählers erfolgt in einer einzelnen
  Zeile – in den Klammern hinter dem Schlüsselwort for.
  Im ersten Schritt, var i = 0, wird die Variable initialisiert, die als Zähler 
  verwendet wird. Im zweiten Schritt i < photos.length, wird dieser Zähler 
  überprüft. Der letzte Schritt, i++, erhöht den Zähler um eins.
  Nachdem wir nun wissen, wie eine for-Schleife funktioniert, können wir uns dem
  Array zuwenden. Erinnerst du dich daran, dass auf die im Array gespeicherten Werte durch
  Nutzung des Indexes zugegriffen werden kann? Den Namen des zweiten Fotoserhälst du etwa so:   photos[1]
  Verändere die Schleife so, dass bei jeder Iteration der aktuelle Wert im
  photos-Array als src-Attribut zum Bild hinzugefügt
  wird.
for (var i = 0; i < photos.length; i++) {
  html += "<img src=" + photos[i] + ">";
}
Setze nun das innerHTML des Films (filmroll) auf
html:
filmroll.innerHTML = html;
Lade die Seite in Chrome neu. Das Scrolling sollte immer noch funktionieren!
  Du kannst jetzt die Fotos umsortieren: Platziere das zweite Foto an die erste Stelle.
  Dazu muss lediglich die Sortierung im photos-Array angepasst werden.
  Yeah! Wir haben die Namen der Bilder in einem Array gespeichert und auf
  dessen Grundlage das HTML für unsere Bilder erstellt. Durch das Aktualisieren
  von innerHTML wurden die Fotos letztlich im Browser dargestellt.
Da wir die Dateinamen in einem Array gespeichert haben, war es sehr einfach die Sortierung der Bilder zu ändern.
(OK... Es wäre auch im HTML sehr einfach gewesen, aber ist das nicht viel spannender gewesen?)