.error()

.error( handler(eventObject) ) Returns: jQuery

Description: Bind an event handler to the "error" JavaScript event.

  • version added: 1.0.error( handler(eventObject) )

    handler(eventObject)A function to execute when the event is triggered.

This method is a shortcut for .bind('error', handler).

The error event is sent to elements, such as images, that are referenced by a document and loaded by the browser. It is called if the element was not loaded correctly.

For example, consider a page with a simple image:

<img src="missing.png" alt="Book" id="book" />

The event handler can be bound to the image:

$('#book').error(function() {
  alert('Handler for .error() called.')
});

If the image cannot be loaded (for example, because it is not present at the supplied URL), the alert is displayed:

Handler for .error() called.

This event may not be correctly fired when the page is served locally. Since error relies on normal HTTP status codes, it will generally not be triggered if the URL uses the file: protocol.

Examples:

Example: To keep a server-side log of JavaScript errors, you might want to:

$(window).error(function(msg, url, line){
  jQuery.post("js_error_log.php", { msg: msg, url: url, line: line });
});

Example: To hide JavaScript errors from the user, you can try:

$(window).error(function(){
  return true;
});

Example: To hide the "broken image" icons for your IE users, you can try:

$("img").error(function(){
  $(this).hide();
});