Komanda new Event

Komanda new Event - notikumu konstruktors, ar kura palīdzību var izveidot notikuma objektu un pēc tam izsaukt šo notikumu no JavaScript, izmantojot metodi dispatchEvent. Kāpēc tas ir vajadzīgs: var imitēt lietotāja klikšķi uz pogas, formas iesniegšanas mēģinājumu un tā tālāk. Šajā gadījumā notikums neatšķirsies no īstā nekā, izņemot īpašību event.isTrusted. Var pat izveidot notikumus ar nestandarta (jūsu izdomātiem) nosaukumiem un pēc tam tos izsaukt vajadzīgajā brīdī.

Sintakse

javascriptnew Event(notikuma tips, [karogi]);

Piemērs

Pieņemsim, ka mums ir poga. Noklikšķinot uz šīs pogas, tiek parādīts ziņojums. Padarīsim tā, lai, novedot peles kursoru virs pogas, šī poga domātu, ka uz tās ir noklikšķināts:

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

button.addEventListener('click', function() {
  alert('ziņojums');
});

button.addEventListener('mouseover', function() {
  let clickEvent = new Event('click'); // izveidojam notikumu
  this.dispatchEvent(clickEvent); // imitējam klikšķi uz pogas
});

Результат:

Piemērs

Var izveidot savus notikumus (ar savu nosaukumu) un pēc tam tos izsaukt vajadzīgajā brīdī. Piesaistīsim pogai notikumu showMessage un, novedot peles kursoru, iniciēsim šo notikumu:

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

button.addEventListener('showMessage', function() {
  alert('ziņojums');
});

button.addEventListener('mouseover', function() {
  let showMessageEvent = new Event('showMessage'); // izveidojam notikumu
  this.dispatchEvent(showMessageEvent); // izsaucam notikuma iedarbināšanu
});

Результат:

Skatiet arī