Anderes Bild anzeigen wenn Bild nicht gefunden wurde in HTML
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
angezeigt code
anzeigen
ausprobieren
benutzt code
bild
code
date
fehler
folgenden code
frage
gefunden wirt
gusto
hilfe
probier
problem
sagen
sekunde
tag
vergessen
zeigen
-
Ich möcht dass wenn das tag/bild">Bild "webcam.jpg" nicht gefunden wirt das Bild "error_bild.jpg" angezeigt wird.
Dazu habe ich folgenden Code benutzt :
<IMG src="webcam.jpg" width="640" height="480" border="1" name="bild" IMG src="error_bild.jpg" width="640" height="480" border="1" name="error" onload="LoadImg()" onerror="ErrorImg()"> <SCRIPT language="JavaScript" type="text/javascript"> <!-- var t = 5 // interval in seconds function ErrorImg() { imgsrc = document.images.error.src; document.images.error.onerror = ""; tmp = new Date(); tmp = "?"+tmp.getTime(); document.images.error.src = imgsrc+tmp; setTimeout("LoadImg()", t*1000); } function LoadImg() { imgsrc = document.images.bild.src; document.images.bild.onload = ""; tmp = new Date(); tmp = "?"+tmp.getTime(); document.images.bild.src = imgsrc+tmp; setTimeout("LoadImg()", t*1000); } // --> </SCRIPT>
Das bild "webcam.jpg" wird angezeigt wenn es gefunden wird, doch wenn es nicht vorhanden ist wird nicht das "error_bild.jpg" angezeigt sondern einfach das normale rote Kreuz oben links.
Ich weiss nicht was falsch ist und wollte nun fragen ob ihr mir sagen könnt was ich ändern muss.
Wenn ihr für dieses Problem eine ganz andere Lösung kennt dürft ihr mir auch gerne diese zeigen.
Liebe Grüsse Etienne -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
hey probier mal
<img src="webcam.jpg" width="640" height="480" border="1" name="bild" onerror="this.src='error_bild.jpg'"/>
Außerdem war in deinem IMG-Tag alles doppelt drin, ich nehme an du hast einfach vergessen das erste IMG-Tag zu schließen.
Andre
Beitrag zuletzt geändert: 26.11.2010 23:02:24 von andre-morillon -
Probiers mal so...
<img src="webcam.jpg" width="640" height="480" border="1" name="bild" onload="LoadImg()" onerror="ErrorImg()"> <script language="JavaScript" type="text/javascript"> var t = 5; var date = new Date(); var tmp = "?"+date.getTime(); function ErrorImg() { document.images.bild.onerror = ""; imgsrc = "error_bild.jpg"; document.images.bild.src = imgsrc+tmp; setTimeout("LoadImg()", t*1000); } function LoadImg() { document.images.bild.onload = ""; imgsrc = "webcam.jpg"; document.images.bild.src = imgsrc+tmp; setTimeout("LoadImg()", t*1000); } </script>
Der Fehler wird darin liegen, dass du theoretisch zwei Bilder in einem anzeigen lassen willst (2x src, 2x name, etc...). Den JS Code hab ich nach Gusto etwas aufgeräumt. Ob es funktioniert, wird sich zeigen... -
Mit diesem Code wird, wenn das Bild"webcam.jpg" nicht gefunden wurde das "error_bild.jpg" angezeigt.
<IMG src="webcam.jpg" width="640" height="480" border="1" name="bild" onload="LoadImg()" onerror="this.src='error_bild.jpg'"/"> <SCRIPT language="JavaScript" type="text/javascript"> <!-- var t = 5 // interval in seconds function LoadImg() { imgsrc = document.images.bild.src; document.images.bild.onload = ""; tmp = new Date(); tmp = "?"+tmp.getTime(); document.images.bild.src = imgsrc+tmp; setTimeout("LoadImg()", t*1000); } // --> </SCRIPT>
Wenn das webcam Bild nun aber wieder gefunden werden kann wird nicht mehr vom error Bild zurück geschaltet -
Schon meine Version getestet?!
-
Dann halt so:
<img src="nav_logo27.png" width="640" height="480" border="1" name="bild" onload="LoadImg()" onerror="ErrorImg()"> <script language="JavaScript" type="text/javascript"> function ErrorImg() { var t = 5; var date = new Date(); var tmp = "?"+date.getTime(); document.images.bild.onerror = ""; imgsrc = "error_bild.jpg"; document.images.bild.src = imgsrc+tmp; setTimeout("LoadImg()", t*1000); } function LoadImg() { var t = 5; var date = new Date(); var tmp = "?"+date.getTime(); document.images.bild.onload = ""; imgsrc = "nav_logo27.png"; document.images.bild.src = imgsrc+tmp; setTimeout("LoadImg()", t*1000); } </script>
Oder alternativ (Müsste aber sicherlich nocht etwas verändert werden)
<img src="nav_logo27.png" width="640" height="480" border="1" name="bild" onload="LoadImg()"> <script language="JavaScript" type="text/javascript"> function LoadImg() { var t = 5; var date = new Date(); var tmp = "?"+date.getTime(); var imgsrc = "nav_logo27.png"+tmp; var errorsrc = "error_bild.jpg"+tmp; document.images.bild.src = imgsrc; if(document.images.bild.onerror) { document.images.bild.src = errorsrc; } setTimeout("LoadImg()", t*1000); } </script>
Beitrag zuletzt geändert: 27.11.2010 0:19:32 von fabo -
Durch ausprobieren und mit euren Vorschlägen hab ich es geschafft.
Hier ist eine mögliche Lösung :
<!-- Webcam --> <IMG src="webcam.jpg" width="640" height="480" border="1" name="bild" onload="LoadImg()" onerror="this.src='error_bild.jpg'"/"> <SCRIPT language="JavaScript" type="text/javascript"> <!-- var t = 5 // interval in seconds function LoadImg() { imgsrc = "webcam.jpg"; document.images.bild.onload = ""; tmp = new Date(); tmp = "?"+tmp.getTime(); document.images.bild.src = imgsrc+tmp; setTimeout("LoadImg()", t*1000); } // --> </SCRIPT> <!-- Webcam -->
Vielen Dank für eure Hilfe.
Liebe Grüsse
Etienne
Beitrag zuletzt geändert: 27.11.2010 0:29:00 von etienne1995 -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage