Polecenie new Event
Polecenie new Event - konstruktor
zdarzeń, za pomocą którego można utworzyć
obiekt zdarzenia, a następnie wywołać to zdarzenie
z JavaScript za pomocą metody dispatchEvent.
Po co to jest potrzebne: można symulować kliknięcie
przez użytkownika przycisku, próbę wysłania
formularza i tak dalej. Przy tym zdarzenie nie będzie
różnić się od prawdziwego niczym poza właściwością
event.isTrusted.
Można nawet tworzyć zdarzenia z niestandardowymi
(wymyślonymi przez ciebie) nazwami, a następnie wywoływać
je w odpowiednim momencie.
Składnia
new Event(typ zdarzenia, [flagi]);
Przykład
Załóżmy, że mamy przycisk. Po kliknięciu na ten przycisk wyświetla się komunikat. Zróbmy tak, aby po najechaniu myszką na przycisk ten przycisk myślał, że został kliknięty:
<button id="button">button</button>
let button = document.querySelector('#button');
button.addEventListener('click', function() {
alert('message');
});
button.addEventListener('mouseover', function() {
let clickEvent = new Event('click'); // tworzymy zdarzenie
this.dispatchEvent(clickEvent); // symulujemy kliknięcie przycisku
});
:
Przykład
Można tworzyć własne zdarzenia (z własną nazwą)
i potem w odpowiednim momencie je wywoływać. Przywiążmy
do przycisku zdarzenie showMessage i po
najechaniu myszką zainicjujmy to zdarzenie:
<button id="button">button</button>
let button = document.querySelector('#button');
button.addEventListener('showMessage', function() {
alert('message');
});
button.addEventListener('mouseover', function() {
let showMessageEvent = new Event('showMessage'); // tworzymy zdarzenie
this.dispatchEvent(showMessageEvent); // wywołujemy wystąpienie zdarzenia
});
:
Zobacz też
-
właściwość
addEventListener,
która wiąże zdarzenia -
właściwość
removeEventListener,
która odwiązuje zdarzenia