new Event հրամանը

new Event հրամանը իրադարձությունների կոնստրուկտոր է, որի օգնությամբ կարելի է ստեղծել իրադարձության օբյեկտ, ապա կանչել այդ իրադարձությունը JavaScript-ից dispatchEvent մեթոդի օգնությամբ: Ինչու է դա անհրաժեշտ․ կարելի է իմիտացնել օգտագործողի կողմից կոճակի սեղմումը, ֆորմայի ուղարկման փորձը և այլն: Այս դեպքում իրադարձությունը չի տարբերվի իրականից բացի event.isTrusted հատկությունից: Կարելի է նաև ստեղծել ոչ ստանդարտ (ձեր կողմից հորինված) անուններով իրադարձություններ և ապա կանչել դրանք անհրաժեշտ պահին:

Շարահյուսություն

javascriptnew Event(իրադարձության տեսակը, [դրոշներ]);

Օրինակ

Ենթադրենք ունենք կոճակ: Այս կոճակի վրա սեղմելու դեպքում արտածվում է հաղորդագրություն: Եկեք անենք, որ մկնիկը կոճակի վրա դնելու դեպքում կոճակը կարծի, թե դրա վրա կտտացրել են.

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

button.addEventListener('click', function() {
  alert('հաղորդագրություն');
});

button.addEventListener('mouseover', function() {
  let clickEvent = new Event('click'); // ստեղծում ենք իրադարձություն
  this.dispatchEvent(clickEvent); // իմիտացնում ենք կտտոց կոճակի վրա
});

Результат:

Օրինակ

Կարելի է ստեղծել սեփական իրադարձություններ (սեփական անունով) և ապա անհրաժեշտ պահին կանչել դրանք: Եկեք կապենք կոճակին showMessage իրադարձությունը և մկնիկը դնելու դեպքում ինիցիալիզացնենք այդ իրադարձությունը.

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

button.addEventListener('showMessage', function() {
  alert('հաղորդագրություն');
});

button.addEventListener('mouseover', function() {
  let showMessageEvent = new Event('showMessage'); // ստեղծում ենք իրադարձություն
  this.dispatchEvent(showMessageEvent); // կանչում ենք իրադարձության գործարկումը
});

Результат:

Տես նաև

  • addEventListener հատկությունը,
    որը կապում է իրադարձությունները
  • removeEventListener հատկությունը,
    որը անջատում է իրադարձությունները