A new Event parancs

A new Event parancs egy eseménykonstruktor, amellyel létrehozhatunk egy eseményobjektumot, majd ezt az eseményt JavaScriptből indíthatjuk a dispatchEvent metódus segítségével. Miért hasznos: utánozhatjuk a felhasználó gombnyomását, egy űrlap elküldését és így tovább. Az esemény nem fog különbözni az igazitól, kivéve a event.isTrusted tulajdonságot. Létrehozhatunk nem szabványos (saját elnevezésű) eseményeket is, majd később a megfelelő pillanatban indíthatjuk őket.

Szintaxis

javascriptnew Event(esemény típusa, [flag-ek]);

Példa

Tegyük fel, van egy gombunk. A gomb megnyomásakor egy üzenet jelenik meg. Hozzuk létre azt, hogy amikor az egérmutatót a gomb fölé visszük, a gomb azt higgye, hogy rákattintottak:

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

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

button.addEventListener('mouseover', function() {
  let clickEvent = new Event('click'); // esemény létrehozása
  this.dispatchEvent(clickEvent); // kattintás szimulálása a gombon
});

Результат:

Példa

Létrehozhatunk saját eseményeket (saját névvel) és később a megfelelő pillanatban indíthatjuk őket. Kössük a gombhoz a showMessage eseményt és az egérmutató gomb fölé vitelekor indítsuk ezt az eseményt:

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

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

button.addEventListener('mouseover', function() {
  let showMessageEvent = new Event('showMessage'); // esemény létrehozása
  this.dispatchEvent(showMessageEvent); // az esemény kiváltása
});

Результат:

Lásd még