blob: 664cfd66e20f30ab08a0cc975b3bc66fb9a0222f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
---
title: 'Element : évènement error'
slug: Web/API/Element/error_event
translation_of: Web/API/Element/error_event
original_slug: Web/Events/error
browser-compat: api.Element.error_event
---
{{APIRef}}
L'évènement `error` est déclenché sur un objet [`Element`](/fr/docs/Web/API/Element) lorsque le chargement d'une ressource a échoué ou qu'elle ne peut pas être utilisée. Cela peut, par exemple, se produire lors d'une erreur d'exécution d'un script ou lorsqu'une image ne peut être trouvée ou si elle est invalide.
<table class="properties">
<tbody>
<tr>
<th scope="row">Bouillonnement</th>
<td>Non</td>
</tr>
<tr>
<th scope="row">Annulable</th>
<td>Non</td>
</tr>
<tr>
<th scope="row">Interface</th>
<td><a href="/fr/docs/Web/API/Event"><code>Event</code></a> ou <a href="/fr/docs/Web/API/UIEvent"><code>UIEvent</code></a></td>
</tr>
<tr>
<th scope="row">Propriété pour la gestion d'évènement</th>
<td>
<a href="/fr/docs/Web/API/GlobalEventHandlers/onerror"><code>onerror</code></a>
</td>
</tr>
</tbody>
</table>
L'objet évènement obtenu est une instance [`UIEvent`](/fr/docs/Web/API/UIEvent) s'il a été généré depuis un élément de l'interface utilisateur ou une instance [`Event`](/fr/docs/Web/API/Event) sinon.
## Exemples
### HTML
```html
<div class="controls">
<button id="img-error" type="button">Générer une erreur d'image</button>
<img class="bad-img" />
</div>
<div class="event-log">
<label>Journal d'évènements :</label>
<textarea readonly class="event-log-contents" rows="8" cols="30"></textarea>
</div>
```
```css hidden
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: .5rem;
}
img {
width: 0;
height: 0;
}
```
### JS
```js
const log = document.querySelector('.event-log-contents');
const badImg = document.querySelector('.bad-img');
badImg.addEventListener('error', (event) => {
log.textContent = log.textContent + `${event.type}: Chargement de l'image\n`;
console.log(event)
});
const imgError = document.querySelector('#img-error');
imgError.addEventListener('click', () => {
badImg.setAttribute('src', 'i-dont-exist');
});
```
### Résultat
{{EmbedLiveSample('', '100%', '250px')}}
## Spécifications
{{Specifications}}
## Compatibilité des navigateurs
{{Compat}}
## Voir aussi
- L'évènement correspondant pour les cibles `Window` : [`error`](/fr/docs/Web/API/Window/error_event)
|