EventTarget.dispatchEvent()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since julho de 2015.
Dispara um Event para o EventTarget especificado, invocando os EventListeners especificados, em uma ordem apropriada. O processamento normal das regras (incluindo a captura e a fase opcional de bubbling) aplica-se a eventos disparados manualmente com dispatchEvent().
Sintaxe
cancelled = !target.dispatchEvent(event)
eventé o objetoEventa ser disparado.targeté utilizado para inicializar oEvent.targete determinar quais event listeners serão invocados.- O valor retornado é
falsese ao menos um dos event handlers o qual manipulou o evento chamouEvent.preventDefault(). De outro modo, isto retornatrue.
O método dispatchEvent joga UNSPECIFIED_EVENT_TYPE_ERR se o tipo do evento não foi especificado pela inicialização do evento antes do método ser chamado, ou se o tipo do evento for is null ou uma string vazia. Exceções jogadas por event handlers são reportadas como exceções não-capturáveis; os event handlers são executados em uma callstack aninhada; eles bloqueiam o chamador até que a rotina tenha sido totalmente executada, mas as execeções não se propagam para o chamador.
Notas
dispatchEvent é a última fase do processo create-init-dispatch, a qual é usada para disparar eventos na implementação do event model. O evento pode ser criado utilizando o método document.createEvent e pode ser inicializado com initEvent ou outro método de inicialização mais específico, como initMouseEvent ou initUIEvent.
Veja também a referência Event object.