Komanda new Event

Komanda new Event - konstruktor događaja, pomoću koga možete kreirati objekat događaja, a zatim pokrenuti taj događaj iz JavaScripta pomoću metode dispatchEvent. Zašto je ovo potrebno: možete da simulirate pritisak korisnika na dugme, pokušaj slanja forme i tako dalje. Pritom se događaj neće razlikovati od pravog ni po čemu osim po svojstvu event.isTrusted. Možete čak i kreirati događaje sa nestandardnim (koje ste vi smislili) nazivima i zatim ih pokrenuti u pravi trenutak.

Sintaksa

javascriptnew Event(tip događaja, [zastavice]);

Primer

Pretpostavimo da imamo dugme. Klikom na ovo dugme se prikazuje poruka. Hajde da napravimo tako da kada se mišom pređe preko dugmeta ovo dugme misli da je kliknuto na njega:

html<button id="button">dugme</button>
javascriptlet button = document.querySelector('#button');

button.addEventListener('click', function() {
  alert('poruka');
});

button.addEventListener('mouseover', function() {
  let clickEvent = new Event('click'); // kreiramo događaj
  this.dispatchEvent(clickEvent); // simuliramo klik na dugme
});

Результат:

Primer

Možete kreirati sopstvene događaje (sa sopstvenim nazivom) i zatim u pravi trenutak da ih pokrenete. Hajde da povežemo za dugme događaj showMessage i prelaskom mišem da inicijalizujemo taj događaj:

html<button id="button">dugme</button>
javascriptlet button = document.querySelector('#button');

button.addEventListener('showMessage', function() {
  alert('poruka');
});

button.addEventListener('mouseover', function() {
  let showMessageEvent = new Event('showMessage'); // kreiramo događaj
  this.dispatchEvent(showMessageEvent); // pokrećemo okidanje događaja
});

Результат:

Pogledajte takođe