Kommandot new Event
Kommandot new Event är en konstruktor
för händelser, med vilken du kan skapa
ett händelseobjekt, och sedan utlösa denna händelse
från JavaScript med hjälp av metoden dispatchEvent.
Varför detta är användbart: du kan efterlikna
användarens klick på en knapp, försök att skicka
ett formulär och så vidare. Dessutom kommer händelsen inte
att skilja sig från den äkta förutom genom egenskapen
event.isTrusted.
Du kan till och med skapa händelser med icke-standardiserade
(av dig hittade på) namn och sedan utlösa
dem vid rätt tillfälle.
Syntax
new Event(händelsetyp, [flaggor]);
Exempel
Låt oss säga att vi har en knapp. När man klickar på denna knapp visas ett meddelande. Låt oss göra så att när musen förs över knappen så tror denna knapp att den blev klickad på:
<button id="button">knapp</button>
let button = document.querySelector('#button');
button.addEventListener('click', function() {
alert('meddelande');
});
button.addEventListener('mouseover', function() {
let clickEvent = new Event('click'); // skapar händelsen
this.dispatchEvent(clickEvent); // efterliknar klick på knappen
});
:
Exempel
Du kan skapa egna händelser (med ditt eget namn)
och sedan utlösa dem vid rätt tillfälle. Låt oss
binda händelsen showMessage till knappen och
när musen förs över utlösa denna händelse:
<button id="button">knapp</button>
let button = document.querySelector('#button');
button.addEventListener('showMessage', function() {
alert('meddelande');
});
button.addEventListener('mouseover', function() {
let showMessageEvent = new Event('showMessage'); // skapar händelsen
this.dispatchEvent(showMessageEvent); // utlöser händelsen
});
:
Se även
-
egenskapen
addEventListener,
som binder händelser -
egenskapen
removeEventListener,
som löser upp bindningen av händelser