Elide stellt Event, CustomEvent und EventTarget bereit. Es gibt keinen
DOM-Baum, daher hat die Zustellung ein einziges Ziel und keine Capture- oder
Bubble-Durchläufe.
Event und CustomEvent
const event = new CustomEvent("tick", {
detail: 42,
cancelable: true,
});Ereignisse stellen die üblichen Mitglieder für Typ, Ziel, aktuelles Ziel, Phase,
Abbruch, Vertrauenswürdigkeit, Zeitstempel und Weitergabe bereit. CustomEvent
ergänzt detail.
Während der Zustellung ist eventPhase gleich Event.AT_TARGET, und
composedPath() enthält das aktuelle Ziel. Nach der Zustellung ist currentTarget
null und composedPath() leer; target bleibt das Zustellungsziel.
EventTarget
const target = new EventTarget();
target.addEventListener("submit", (event) => {
event.preventDefault();
}, { once: true });
target.dispatchEvent(new Event("submit", { cancelable: true })); // false
target.dispatchEvent(new Event("submit", { cancelable: true })); // true- Callbacks können Funktionen oder Objekte mit
handleEvent()sein. - Doppelte Registrierungen von
(type, callback, capture)werden ignoriert. - Die Optionen
once,passive,captureundsignalwerden akzeptiert. - Das Entfernen eines Listeners während der Zustellung verhindert, dass dieser Listener später in derselben Zustellung ausgeführt wird.
- Das Hinzufügen eines Listeners während der Zustellung wirkt sich auf eine spätere Zustellung aus.
- Ausnahmen von Listenern werden gemeldet, ohne die übrigen Listener anzuhalten.
dispatchEvent()gibtfalsezurück, wenn ein abbrechbares Ereignis verhindert wurde.
Signalgesteuerte Listener sind unter DOM Abort beschrieben.
Reference
Status: Full · Not measured · since 1.1.0
Exports
| Export | Kind | Status | Notes |
|---|---|---|---|
Event | class | Full | type, target, currentTarget, NONE, CAPTURING_PHASE, AT_TARGET, BUBBLING_PHASE, eventPhase, composedPath(), stopPropagation(), stopImmediatePropagation(), bubbles, cancelable, preventDefault(), defaultPrevented, composed, isTrusted, timeStamp, cancelBubble |
CustomEvent | class | Full | detail |
EventTarget | class | Full | addEventListener(), removeEventListener(), dispatchEvent() |