Příkaz new Event
Příkaz new Event je konstruktor
událostí, pomocí kterého lze vytvořit
objekt události a poté tuto událost vyvolat
z JavaScriptu pomocí metody dispatchEvent.
K čemu to je užitečné: lze napodobit stisknutí
tlačítka uživatelem, pokus o odeslání
formuláře a tak dále. Přitom se událost nebude
lišit od skutečné ničím kromě vlastnosti
event.isTrusted.
Lze dokonce vytvářet události s nestandardními
(vámi vymyšlenými) názvy a poté je vyvolat
v potřebný okamžik.
Syntaxe
new Event(typ události, [příznaky]);
Příklad
Předpokládejme, že máme tlačítko. Po kliknutí na toto tlačítko se zobrazí zpráva. Udělejme to, aby se při najetí myší na tlačítko toto tlačítko domnívalo, že na něj bylo kliknuto:
<button id="button">tlačítko</button>
let button = document.querySelector('#button');
button.addEventListener('click', function() {
alert('zpráva');
});
button.addEventListener('mouseover', function() {
let clickEvent = new Event('click'); // vytvoříme událost
this.dispatchEvent(clickEvent); // simulujeme kliknutí na tlačítko
});
:
Příklad
Lze vytvářet vlastní události (s vlastním názvem)
a poté je v potřebný okamžik vyvolat. Pojďme
připojit k tlačítku událost showMessage a po
najetí myší inicializovat tuto událost:
<button id="button">tlačítko</button>
let button = document.querySelector('#button');
button.addEventListener('showMessage', function() {
alert('zpráva');
});
button.addEventListener('mouseover', function() {
let showMessageEvent = new Event('showMessage'); // vytvoříme událost
this.dispatchEvent(showMessageEvent); // vyvoláme aktivaci události
});
:
Viz také
-
vlastnost
addEventListener,
která připojuje události -
vlastnost
removeEventListener,
která odpojuje události