dispatchEvent metodu
dispatchEvent metodu element üzərində hadisə yaratmağa imkan verir.
Buna nə ehtiyac var: istifadəçinin düyməni basmasını, formanın göndərilmə cəhdini
və s. imitasiya etmək olar. Bu zaman hadisə əsl hadisədən event.isTrusted xassəsi istisna olmaqla, heç nə ilə fərqlənməyəcək.
Hətta qeyri-standart (tərəfinizdən uydurulmuş) adlarla hadisələr yaradıb, sonra onları lazımi anda çağıra bilərsiniz. Metod, hadisənin çağırılması lazım olan elementə tətbiq edilir.
Parametrdə metod, konstruktor vasitəsilə yaradılmış hadisəni (obyekt) qəbul edir
new Event.
Sintaksis
element.dispatchEvent(event);
Nümunə
Tutaq ki, bizim bir düyməmiz var. Bu düyməni basdıqda bir mesaj çıxır. Gəlin elə edək ki, siçan düymənin üzərinə gətirildikdə bu düymə onun üzərinə klik edildiyini düşünsün:
<button id="button">düymə</button>
let button = document.querySelector('#button');
button.addEventListener('click', function() {
alert('mesaj');
});
button.addEventListener('mouseover', function() {
let clickEvent = new Event('click'); // hadisə yaradırıq
this.dispatchEvent(clickEvent); // düyməyə klik imitasiyası edirik
});
:
Nümunə
Öz hadisələrinizi (öz adınızla) yarada bilərsiniz
və sonra lazımi anda onları çağıra bilərsiniz. Gəlin
düyməyə showMessage hadisəsini bağlayaq və
siçan üzərinə gətirildikdə bu hadisəni işə salaq:
<button id="button">düymə</button>
let button = document.querySelector('#button');
button.addEventListener('showMessage', function() {
alert('mesaj');
});
button.addEventListener('mouseover', function() {
let showMessageEvent = new Event('showMessage'); // hadisə yaradırıq
this.dispatchEvent(showMessageEvent); // hadisənin işləməsini təmin edirik
});
: