Kommandoen new Event
Kommandoen new Event er en konstruktør
til begivenheder, som kan bruges til at oprette
et begivenhedsobjekt, og derefter udløse denne begivenhed
fra JavaScript ved hjælp af metoden dispatchEvent.
Hvorfor er dette nyttigt: man kan efterligne et brugerklik
på en knap, et forsøg på at indsende
en formular og så videre. I dette tilfælde vil begivenheden ikke
adskille sig fra den virkelige på nær egenskaben
event.isTrusted.
Man kan endda oprette begivenheder med ikke-standard
(selvopfundne) navne og derefter udløse
dem på det ønskede tidspunkt.
Syntaks
new Event(begivenhedstype, [flag]);
Eksempel
Lad os sige, at vi har en knap. Når der klikkes på denne knap, vises en besked. Lad os gøre sådan, at når musen føres over knappen, tror knappen, at der er klikket på den:
<button id="button">knap</button>
let button = document.querySelector('#button');
button.addEventListener('click', function() {
alert('besked');
});
button.addEventListener('mouseover', function() {
let clickEvent = new Event('click'); // opretter begivenhed
this.dispatchEvent(clickEvent); // efterligner klik på knappen
});
:
Eksempel
Man kan oprette sine egne begivenheder (med sit eget navn)
og derefter udløse dem på det ønskede tidspunkt. Lad os
knytte begivenheden showMessage til knappen og
når musen føres over, initialiseres denne begivenhed:
<button id="button">knap</button>
let button = document.querySelector('#button');
button.addEventListener('showMessage', function() {
alert('besked');
});
button.addEventListener('mouseover', function() {
let showMessageEvent = new Event('showMessage'); // opretter begivenhed
this.dispatchEvent(showMessageEvent); // udløser begivenheden
});
:
Se også
-
egenskaben
addEventListener,
som tilknytter begivenheder -
egenskaben
removeEventListener,
som fjerner begivenheder