Kommandoen new Event
Kommandoen new Event er en konstruktør
for hendelser, som kan brukes til å opprette
et hendelseobjekt, og deretter utløse denne hendelsen
fra JavaScript ved hjelp av metoden dispatchEvent.
Hvorfor er dette nyttig: man kan simulere brukerens
klikk på en knapp, forsøk på å sende inn
et skjema og så videre. I dette tilfellet vil ikke hendelsen
skille seg fra den ekte på noen annen måte enn egenskapen
event.isTrusted.
Man kan til og med opprette hendelser med ikke-standard
(selvoppfunnet) navn og deretter utløse
dem i riktig øyeblikk.
Syntaks
new Event(hendelsestype, [flagg]);
Eksempel
La oss si at vi har en knapp. Når denne knappen trykkes, vises en melding. La oss gjøre slik at når musepekeren beveger seg over knappen, skal knappen tro at den ble klikket på:
<button id="button">knapp</button>
let button = document.querySelector('#button');
button.addEventListener('click', function() {
alert('melding');
});
button.addEventListener('mouseover', function() {
let clickEvent = new Event('click'); // oppretter en hendelse
this.dispatchEvent(clickEvent); // simulerer et klikk på knappen
});
:
Eksempel
Man kan opprette egne hendelser (med eget navn)
og deretter utløse dem i riktig øyeblikk. La oss
knytte en hendelse kalt showMessage til knappen og
når musepekeren beveger seg over, initialiserer vi denne hendelsen:
<button id="button">knapp</button>
let button = document.querySelector('#button');
button.addEventListener('showMessage', function() {
alert('melding');
});
button.addEventListener('mouseover', function() {
let showMessageEvent = new Event('showMessage'); // oppretter en hendelse
this.dispatchEvent(showMessageEvent); // utløser hendelsen
});
:
Se også
-
egenskapen
addEventListener,
som knytter hendelser -
egenskapen
removeEventListener,
som fjerner hendelser