228 of 264 menu

Метод dispatchEvent

Метод dispatchEvent омогућава симулирање догађаја на елементу. Зашто је то потребно: може се симулирати притискање корисника на дугме, покушај слања форме и тако даље. При томе се догађај неће разликовати од правог ни по чему осим својства event.isTrusted. Може се чак креирати догађаје са нестандардним (вама измишљеним) називима и затим их позивати у тренутку када је потребно. Метод се примењује на елемент на коме треба да се изазове догађај. У параметру метод добија догађај (објекат), креиран помоћу конструктора new Event.

Синтакса

елемент.dispatchEvent(event);

Пример

Претпоставимо да имамо дугме. При притискању на ово дугме приказује се порука. Хајде да направимо тако да при прелазу мишем преко дугмета ово дугме мисли да је на њега кликнуто:

<button id="button">дугме</button> let button = document.querySelector('#button'); button.addEventListener('click', function() { alert('порука'); }); button.addEventListener('mouseover', function() { let clickEvent = new Event('click'); // креирамо догађај this.dispatchEvent(clickEvent); // симулирамо клик на дугме });

:

Пример

Може се креирати сопствене догађаје (са сопственим називом) и затим у тренутку када је потребно позивати их. Хајде да вежемо за дугме догађај showMessage и при прелазу мишем иницијализујмо тај догађај:

<button id="button">дугме</button> let button = document.querySelector('#button'); button.addEventListener('showMessage', function() { alert('порука'); }); button.addEventListener('mouseover', function() { let showMessageEvent = new Event('showMessage'); // креирамо догађај this.dispatchEvent(showMessageEvent); // изазивамо активирање догађаја });

:

Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј