Ich versuche zu fangen, wenn ein Bild aus einem bestimmten Grund nicht geladen wird, sagen wir Denied load of "url"
. Ich versuchte mit onerror
, aber das wird mit jedem Fehler ausgelöst. Gibt es eine Möglichkeit, die onerror
oder eine andere Möglichkeit, es zu tun?Erfassen eines bildspezifischen Fehlers in Javascript
Antwort
Sie können es auf diese Weise tun
<img src="image.png" onerror="imgError(this);"/>
jetzt eine Funktion auf dieser wie aufrufen können,
function imgError(image) {
image.onerror = "";
image.src = "/images/noimage.gif";
return true;}
Es ist nicht posible, aber in der Regel das Problem ist so etwas wie dieses: "Fehler 404 Ressource gefunden" oder "Fehler beim Laden der Ressource: net :: ERR_FILE_NOT_FOUND".
Aber Sie können Ajax-Request mit Typ-GET und fangen den Fehler machen.
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
function CheckImageError(img){
\t \t var urlimg = img.attributes.src.ownerElement.currentSrc ;
\t \t $.ajax({
\t \t \t type:"GET",
\t \t \t url:urlimg ,
context: img,
\t \t \t error:function(requestObject, error, errorThrown){
\t \t \t \t // trace console.log or other action
\t \t \t },
\t \t \t complete: function(){
\t \t \t \t //do something
$(this).css("border","1px solid red");
\t \t \t }
\t \t })
\t }
</script>
<img onerror="CheckImageError(this)" src="image.gif">
können Sie XMLHttpRequest überprüfen Objekteigenschaften
Okay, ich versuche deine Lösung. Warum gibt mir currentSrc ""? img.attributes.src.ownerElement gibt mir das img-Objekt mit seinem src, aber currentSrc verwandelt es in "". –
dann wird Ihre AJAX-Anfrage Fehlerrückruf ausführen;) –
Irgendwie hat es noch vollständigen Rückruf ausgeführt. Ich habe versucht, ownerElement.currentSrc zu löschen und dann führte es einen Fehler aus, aber errorThrown war leer, irgendwelche Ideen? –
- 1. Erhalten eines NaN-Fehlers - Javascript
- 2. Ändern der CarrierWave-Fehlermeldung beim Erfassen eines Fehlers von rmagick
- 3. Verfolgen der Quelllinie eines Fehlers in einem Javascript Eval
- 4. Erfassen eines Desktop-Screenshots mit Javascript
- 5. Zeilennummer eines Fehlers aus minimierten JavaScript-Dateien abrufen
- 6. Debuggen eines SMTP-Timeout-Fehlers
- 7. Ermitteln der Fehlernummer eines Fehlers
- 8. HttpWebRequest Vermeidung eines Fehlers (500)
- 9. Binärsuche eines sortierten Array-Fehlers
- 10. Debugging eines MySqlDataReader-Fehlers in C#
- 11. Wie Debuggen eines "} erwarteten Fehlers" in C#?
- 12. Korrigieren eines Fehlers in Liquibase-Skript
- 13. Ermitteln eines "Undefined" -Fehlers in console.log
- 14. Erfassen eines Tastendrucks in C++
- 15. Javascript Variable erfassen
- 16. Erfassen eines US-Feiertags
- 17. Überprüfen Sie den Typ eines benutzerdefinierten Fehlers
- 18. Abfangen eines Azure WebJob-Fehlers/Ausnahme
- 19. PHP Abfangen eines SimpleXMLElement Parse-Fehlers
- 20. Ausnahme innerhalb eines while-Schleife Fehlers
- 21. Hilfe bei der Diagnose eines Subversion-Fehlers
- 22. Data Mining-Protokolle zum Lokalisieren eines Fehlers
- 23. Debug eines JSON-Fehlers von Golang
- 24. Lösen eines Proxy-Fehlers (Node.js Server)
- 25. Harte Codierung eines zweidimensionalen Array-Fehlers?
- 26. Aggregieren mit Cbind Generieren eines Fehlers
- 27. Was sind die Vorteile eines Fehlers?
- 28. nlapiSearchRecord Senden eines Fehlers anstelle von null
- 29. C# - Xamarin - Wie Debuggen eines "using ..." Fehlers?
- 30. Erfassen Sie alle Ereignisse (JavaScript)
Sorry, aber, dass auch für alle Fehler funktioniert, wie kann ich zwischen ihnen unterscheiden? Mein Bild wirft 2 Fehler, "Verweigert Laden von" und "ERR_FAILED", ich brauche die Webseite, um verschiedene Dinge für jeden Fehler zu tun. –
was bekommen Sie (Bild) Parameter? –
Ich bekomme das ganze Dokument, ich schätze, weil ich das Bild in einem Javascript erstellen. –