Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. Les API Web
  3. Window
  4. GlobalEventHandlers.onerror

Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in EnglishAlways switch to English

GlobalEventHandlers.onerror

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.

Ungestionnaire d'événement pour l'événementerror. Des événements d'erreur sont déclenchés vers diverses cibles et pour différents types d'erreurs:

  • Lorsqu'uneerreur de runtime JavaScript se produit (erreurs de syntaxe comprises), un évènementerror utilisant l'interfaceErrorEvent est envoyé àwindow, etwindow.onerror() est appelé.
  • Lorsque lechargement d'une ressource (telle que<img> ou<script>)échoue, un événementerror utilisant l'interfaceEvent est déclenché sur l'élément qui a initié le chargement, et le gestionnaireonerror() de l'élément est invoqué. Ces évènements d'erreur ne remontent pas à window, mais (au moins dans FireFox) ils peuvent être gérés par une unique capturewindow.addEventListener.

Syntaxe

Pour des raisons historiques, des arguments différents sont passés aux gestionnaireswindow.onerror etelement.onerror.

window.onerror

js
window.onerror = function(messageOrEvent, source, noligne, nocolonne, erreur) { ... }

Paramètres de la fonction :

  • message : message d'erreur (chaîne ou objet évènement). Disponible commeevent (sic !) dans le gestionnaire de HTMLonerror="".
  • source : l'URL du script où l'erreur a été déclenchée (chaîne)
  • noligne : le numéro de ligne où l'erreur a été déclenchée (nombre)
  • nocolonne : le numéro de colonne où l'erreur a été déclenchée (nombre)
  • erreur : unError Object (objet)

element.onerror (etwindow.addEventListener('error'))

js
element.onerror = function(event) { ... }

element.onerror accepte une fonction avec un argument unique de typeEvent.

Notes

Quand une erreur de syntaxe**(?)** se produit dans un script chargé à partir d'uneorigine différente, les détails de l'erreur de syntaxe ne sont pas rapportés, afin de prévenir la fuite d'information (voirbug Firefox 363897). A la place, l'erreur est simplement reportée en tant que"Script error". Ce comportement peut être surchargé par certains navigateurs en utilisant l'attributcrossorigin de<script> et en faisant en sorte que le serveur envoie les entêtes de réponseCORS HTTP appropriés. Un contournement consiste à isoler "Script error" et à la gérer en sachant que les détails de l'erreur ne sont visibles que la console du navigateur et non accessibles en JavaScript.

js
window.onerror = function (msg, url, noLigne, noColonne, erreur) {  var chaine = msg.toLowerCase();  var souschaine = "script error";  if (chaine.indexOf(souschaine) > -1) {    alert("Script Error : voir la Console du Navigateur pour les Détails");  } else {    var message = [      "Message : " + msg,      "URL : " + url,      "Ligne : " + noLigne,      "Colonne : " + noColonne,      "Objet Error : " + JSON.stringify(erreur),    ].join(" - ");    alert(message);  }  return false;};

Lors de l'utilisation du balisage html intégré (<body onerror="alert('une erreur est survenue')>...), la spécification HTML requiert que les arguments passés àonerror soient nommésevent,source,lineno,colno,error. Dans les navigteurs qui n'ont pas implémenté cette obligation, ils peuvent toujours être obtenus viaarguments[0] àarguments[2].

Spécifications

Specification
HTML
# event-error
HTML
# handler-onerror

Compatibilité des navigateurs

Voir aussi

Help improve MDN

Learn how to contribute

Cette page a été modifiée le par lescontributeurs du MDN.


[8]ページ先頭

©2009-2026 Movatter.jp