Home
Button Mobile Webdesign em Foco
Newsletter Webdesign em Foco
Support Webdesign em Foco
Contribuition Webdesign em Foco
Doe para a Webdesign em Foco
Suporte da Webdesign em Foco
Fechar

Vanilla Javascript - #20 Delegação de Eventos

16/05/2019

Na aula de hoje vamos aprender sobre delegação de eventos no Javascript. � muito importante entender essa técnica principalmente quando criamos elementos novos no nosso DOM.

Delegação de eventos

Normalmente precisamos delegar eventos ao pai quando criamos elementos dinâmicamente, ou seja, elementos que não existiam no site quando da leitura inicial da árvore do DOM.

(function readyJS(win,doc){
    'use strict';

    let btn=doc.querySelector("#btn");
    let main=doc.querySelector(".main");

    function createElement(event)
    {
        const newButton=doc.createElement("button");
        newButton.id="newButton";
        newButton.innerHTML='New Button';
        main.appendChild(newButton);
    }

    function alertar(event)
    {
        alert('New Button');
    }

    function optEvents()
    {
        if(event.target.id==='newButton'){
            alertar();
        }else if(event.target.id==='btn'){
            createElement();
        }
    }
    main.addEventListener("click",optEvents,false);
})(window, document);

Repare no exemplo acima que o newButton foi criado dinâmicamente, logo se você tentar atribuir um evento diretamente a ele não vai surtir efeito, pois quando da abertura do site este elemento não existia. Para tanto, foi delegado o evento ao elemento pai, no caso a div main e aí sim consigo utilizar meu novo botão.

Sucesso nos códigos e na vida!

Receba as aulas da Webdesign em Foco em Seu Email
Suporte Webdesign em Foco

Posts Relacionados

Vanilla Javascript - #19 Eventos e Polimorfismo
Na aula de hoje daremos sequência ao aprendizado de eventos, abrangendo também o polimorfismo, ou seja, métodos iguais com resultados diferentes.
Saiba mais!
Vanilla Javascript - #21 Propriedades e Atributos
Na aula de hoje trabalharemos com manipulação de propriedades e atributos dos elementos que compõe o DOM do nosso website.
Saiba mais!
Javascript
Ensinaremos durante as aulas a codificação desta importante linguagem de programação.
Saiba mais!