EventTarget
est une interface implémentée par des objets qui peuvent recevoir des évènements et avoir des auditeurs.
Element
, document
, et window
sont les évènements cibles les plus communs, cependant d'autres objets peuvent être utilisés comme évènements cibles, par exemple XMLHttpRequest
, AudioNode
, AudioContext
et d'autres.
De nombreux évènements cibles (incluant les éléments documents et fenêtres) supportent également le réglage event handlers via les propriétés et attributs on...
.
Constructeur
EventTarget()
- Crée une nouvelle instance d'
EventTarget
.
Méthodes
EventTarget.addEventListener()
- Enregiste un gestionnaire d'évènement d'un type d'évènement spécifique
EventTarget
. EventTarget.removeEventListener()
- Supprime un auditeur d'évènements de
EventTarget
. EventTarget.dispatchEvent()
- Envoie un élément à
EventTarget
.
Exemples
Une implémentation simple
var EventTarget = function() { this.listeners = {}; }; EventTarget.prototype.listeners = null; EventTarget.prototype.addEventListener = function(type, callback) { if (!(type in this.listeners)) { this.listeners[type] = []; } this.listeners[type].push(callback); }; EventTarget.prototype.removeEventListener = function(type, callback) { if (!(type in this.listeners)) { return; } var stack = this.listeners[type]; for (var i = 0, l = stack.length; i < l; i++) { if (stack[i] === callback){ stack.splice(i, 1); return; } } }; EventTarget.prototype.dispatchEvent = function(event) { if (!(event.type in this.listeners)) { return true; } var stack = this.listeners[event.type]; for (var i = 0, l = stack.length; i < l; i++) { stack[i].call(this, event); } return !event.defaultPrevented; };
Spécifications
Spécifications | Statuts | Commentaires |
---|---|---|
DOM La définition de 'EventTarget' dans cette spécification. |
Standard évolutif | Pas de changement. |
Document Object Model (DOM) Level 3 Events Specification La définition de 'EventTarget' dans cette spécification. |
Obsolete | Quelques paramètres sont désormais optionnels (listener ), ou accepte la valeur null (useCapture ). |
Document Object Model (DOM) Level 2 Events Specification La définition de 'EventTarget' dans cette spécification. |
Obsolete | Définition initiale. |
Compatibilité des navigateurs
Le tableau de compatibilité de cette page a été généré à partir de données structurées. Si vous souhaitez contribuer à ces données, n'hésitez pas à consulter https://github.com/mdn/browser-compat-data et à nous envoyer unepull request.
Update compatibility data on GitHub
Ordinateur | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
EventTarget | Chrome Support complet 1 | Edge Support complet Oui | Firefox Support complet 1 | IE Support complet 6 | Opera Support complet 7 | Safari
Support complet
10.1
| WebView Android Support complet 1 | Chrome Android Support complet 18 | Firefox Android Support complet 4 | Opera Android Support complet 10.1 | Safari iOS
Support complet
10.3
| Samsung Internet Android Support complet Oui |
EventTarget() constructor | Chrome Support complet 64 | Edge ? | Firefox Support complet 59 | IE Aucun support Non | Opera Support complet 51 | Safari Aucun support Non | WebView Android Support complet 64 | Chrome Android Support complet 64 | Firefox Android Support complet 59 | Opera Android Support complet 47 | Safari iOS Aucun support Non | Samsung Internet Android Aucun support Non |
addEventListener | Chrome
Support complet
1
| Edge Support complet 12 | Firefox Support complet 1 | IE
Support complet
9
| Opera Support complet 7 | Safari Support complet 1 | WebView Android
Support complet
1
| Chrome Android
Support complet
18
| Firefox Android Support complet 4 | Opera Android Support complet 10.1 | Safari iOS Support complet 1 | Samsung Internet Android Support complet Oui |
dispatchEvent | Chrome Support complet 4 | Edge Support complet 12 | Firefox Support complet 2 | IE
Support complet
9
| Opera Support complet 9 | Safari Support complet 3.2 | WebView Android Support complet 4 | Chrome Android Support complet 18 | Firefox Android Support complet 4 | Opera Android Support complet Oui | Safari iOS Support complet Oui | Samsung Internet Android Support complet Oui |
removeEventListener | Chrome Support complet 1 | Edge Support complet 12 | Firefox Support complet 1 | IE
Support complet
9
| Opera Support complet 7 | Safari Support complet 1 | WebView Android Support complet 1 | Chrome Android Support complet 18 | Firefox Android Support complet 4 | Opera Android Support complet 10.1 | Safari iOS Support complet 1 | Samsung Internet Android Support complet Oui |
Légende
- Support complet
- Support complet
- Aucun support
- Aucun support
- Compatibilité inconnue
- Compatibilité inconnue
- Voir les notes d'implémentation.
- Voir les notes d'implémentation.
- Cette fonctionnalité utilise un nom non-standard.
- Cette fonctionnalité utilise un nom non-standard.
Voir aussi
- Event reference - les évènements disponibles pour la plateforme.
- Event developer guide
Event
interface