Uhlig: fehlendes Bild durch ein Ersatzbild anzeigen

``Wer kann mir eine Lösung für folgendes Problem anbieten??

Ich habe eine Anwendung mit vielen Dateien in Html, mein Hobby, geschrieben. Die Anwendung läuft nur auf dem PC – keine Server-Anwendung!
Dabei rufe ich eine Bilddatei auf und stelle sie neben Text auf einer Seite dar. Wenn diese Datei nicht vorhanden ist, soll eine Ersatzdatei - wieder ein Bild - dafür an dieser Stelle zur Darstellung kommen. Ich wähle mit JavaScript beim Aufrufen der Seite die dazugehörige Bilddatei aus (eine Seite mit verschiedenen Bilddateien und einem Iframe mit dem dazugehörigen Text). Gibt es eine Möglichkeit, das Vorhandensein der Datei vor dem Aufruf zu prüfen? Dann könnte ich gleich im Ergebnis der Prüfung die Ersatzdatei angeben. Habe noch keinen Weg gefunden.

Danke im Voraus für eine Hilfe

  1. Moin

    Ich wähle mit JavaScript beim Aufrufen der Seite die dazugehörige Bilddatei aus (eine Seite mit verschiedenen Bilddateien und einem Iframe mit dem dazugehörigen Text). Gibt es eine Möglichkeit, das Vorhandensein der Datei vor dem Aufruf zu prüfen? Dann könnte ich gleich im Ergebnis der Prüfung die Ersatzdatei angeben. Habe noch keinen Weg gefunden.

    du kannst mit Javascript und AJAX den http Status-Code für eine Datei abfragen. Wenn dieser 4XX oder 5XX ist, kannst du ein "Standardbild" laden.

    Ajax ist hier gut erklärt: http://www.w3schools.com/ajax/ajax_intro.asp

    Gruß Bobby

    --
    -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
    ### Henry L. Mencken ###
    -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
    ### Viktor Frankl ###
    ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
  2. Om nah hoo pez nyeetz, Uhlig!

    Schnelle und schmutzige Lösung

    <img src="…" onError="this.src='ersatzbild.jpg';" alt="…">  
    
    

    Das lässt sich natürlich auch für alle Bilder gleichzeitig machen, indem du einen Eventhandler registrierst.

    Matthias

    --
    Der Unterschied zwischen Java und JavaScript ist größer als der zwischen Host und Hostie.

    1. Danke Mattias
      Aber leider geht diese Methode nicht beim Iframe. Gibt es da auch eine Lösung?? Habe ich beim Übertragen einen Fehler gemacht?
      <iframe src="" name="Beschreibung" ... onError="this.src='Texte/0.htm';">
      so gibt es nur die Fehlermeldung vom IE.
      Wer kennt die richtige Methode?