HTMLElement: error event - Web APIs | MDN (original) (raw)

Syntax

Use the event name in methods like addEventListener(), or set an event handler property.

addEventListener("error", (event) => { })

onerror = (event) => { }

Event type

The event object is a UIEvent instance if it was generated from a user interface element, or an Event instance otherwise.

Event UIEvent

Examples

Live example

HTML

<div class="controls">
  <button id="img-error" type="button">Generate image error</button>
  <img src="bad-image.jpg" class="bad-img" alt="I don't exist" />
</div>

<div class="event-log">
  <label for="eventLog">Event log:</label>
  <textarea
    readonly
    class="event-log-contents"
    rows="8"
    cols="30"
    id="eventLog"></textarea>
</div>
body {
  display: grid;
  grid-template-areas: "control log";
}

.controls {
  grid-area: control;
  display: flex;
  align-items: center;
  justify-content: center;
}

.event-log {
  grid-area: log;
}

.event-log-contents {
  resize: none;
}

label,
button {
  display: block;
}

button {
  height: 2rem;
  margin: 0.5rem;
}

img {
  width: 0;
  height: 0;
}

JavaScript

const log = document.querySelector(".event-log-contents");

const badImg = document.querySelector(".bad-img");
badImg.addEventListener("error", (event) => {
  log.textContent += `${event.type}: Loading image\n`;
  console.log(event);
});

const imgError = document.querySelector("#img-error");
imgError.addEventListener("click", () => {
  badImg.setAttribute("src", "i-dont-exist");
});

Result

Specifications

Specification
UI Events # event-type-error
HTML # event-error

Browser compatibility

See also