Kaedah dispatchEvent
Kaedah dispatchEvent membolehkan peniruan
peristiwa pada elemen.
Mengapa ini diperlukan: anda boleh meniru tindakan
pengguna menekan butang, percubaan penghantaran
borang dan sebagainya. Peristiwa ini tidak akan
berbeza dengan peristiwa sebenar kecuali melalui sifat
event.isTrusted.
Anda juga boleh mencipta peristiwa dengan nama
tidak standard (ciptaan anda) dan kemudian memicunya
pada masa yang diperlukan. Kaedah ini digunakan pada elemen yang perlu dicetuskan peristiwanya.
Parameter kaedah menerima peristiwa (objek), yang dicipta menggunakan pembina
new Event.
Sintaks
elemen.dispatchEvent(event);
Contoh
Katakan kita mempunyai butang. Apabila butang ini ditekan, mesej akan dipaparkan. Mari kita buat supaya apabila tetikus dihalakan ke atas butang butang ini menyangka ia telah diklik:
<button id="button">butang</button>
let button = document.querySelector('#button');
button.addEventListener('click', function() {
alert('mesej');
});
button.addEventListener('mouseover', function() {
let clickEvent = new Event('click'); // mencipta peristiwa
this.dispatchEvent(clickEvent); // meniru klik pada butang
});
:
Contoh
Anda boleh mencipta peristiwa sendiri (dengan nama sendiri)
dan kemudian memicunya pada masa yang diperlukan. Mari
ikat peristiwa showMessage kepada butang dan
apabila tetikus dihalakan ke atas, mulakan peristiwa ini:
<button id="button">butang</button>
let button = document.querySelector('#button');
button.addEventListener('showMessage', function() {
alert('mesej');
});
button.addEventListener('mouseover', function() {
let showMessageEvent = new Event('showMessage'); // mencipta peristiwa
this.dispatchEvent(showMessageEvent); // mencetuskan peristiwa
});
: