Comanda new Event
Comanda new Event - este un constructor
de evenimente care poate fi folosit pentru a crea
un obiect de eveniment, iar apoi pentru a declanșa acel eveniment
din JavaScript folosind metoda dispatchEvent.
De ce este util: poți simula apăsarea
utilizatorului pe un buton, încercarea de trimitere
a unui formular și așa mai departe. În acest caz, evenimentul nu se va
deosebi de unul real cu excepția proprietății
event.isTrusted.
Poți chiar crea evenimente cu nume non-standard
(pe care le-ai inventat) și apoi să le declanșezi
în momentul potrivit.
Sintaxă
new Event(tipul evenimentului, [steaguri]);
Exemplu
Să presupunem că avem un buton. La click pe acest buton se afișează un mesaj. Să facem astfel încât atunci când mouse-ul este adus deasupra butonului, acesta să creadă că a fost apăsat:
<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'); // creăm evenimentul
this.dispatchEvent(clickEvent); // simulăm click pe buton
});
:
Exemplu
Poți crea propriile evenimente (cu propriile nume)
și apoi să le declanșezi în momentul potrivit. Să
atasăm butonului evenimentul showMessage și la
aducerea mouse-ul peste el să inițiem acest eveniment:
<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'); // creăm evenimentul
this.dispatchEvent(showMessageEvent); // declanșăm evenimentul
});
:
Vezi și
-
proprietatea
addEventListener,
care atașează evenimente -
proprietatea
removeEventListener,
care dezatașează evenimente