Metoda dispatchEvent
Metoda dispatchEvent lejon imitimin
e një ngjarjeje në një element.
Pse është e nevojshme kjo: mund të imitohet shtypja
e përdoruesit në një buton, përpjekja për dërgim
të një forme e kështu me radhë. Në këtë rast ngjarja nuk do të
ndryshojë nga e vërteta për asgjë përveç vetisë
event.isTrusted.
Mund edhe të krijohen ngjarje me emra jo standardë
(të shpikur nga ju) dhe më pas t'i thirrni
ato në momentin e duhur. Metoda zbatohet në elementin në të cilin duhet të thirret ngjarja.
Në parametër metoda merr ngjarjen (objekt), e krijuar me ndihmën e konstruktorit
new Event.
Sintaksa
element.dispatchEvent(event);
Shembull
Le të themi se kemi një buton. Kur shtypet ky buton shfaqet një mesazh. Le ta bëjmë kështu që kur miu vihet mbi butonin ky buton të mendojë se është klikuar:
<button id="button">button</button>
let button = document.querySelector('#button');
button.addEventListener('click', function() {
alert('message');
});
button.addEventListener('mouseover', function() {
let clickEvent = new Event('click'); // krijojmë ngjarjen
this.dispatchEvent(clickEvent); // imitojmë klikimin në buton
});
:
Shembull
Mund të krijohen ngjarjet tuaja (me emrin tuaj)
dhe më pas në momentin e duhur t'i thirrni ato. Le të
lidhim në buton ngjarjen showMessage dhe kur
miu vihet mbi të të inicializojmë këtë ngjarje:
<button id="button">buton</button>
let button = document.querySelector('#button');
button.addEventListener('showMessage', function() {
alert('message');
});
button.addEventListener('mouseover', function() {
let showMessageEvent = new Event('showMessage'); // krijojmë ngjarjen
this.dispatchEvent(showMessageEvent); // shkaktojmë aktivizimin e ngjarjes
});
: