Adicionando eventos com addEventListener em Javascript

แชร์
ฝัง
  • เผยแพร่เมื่อ 28 ธ.ค. 2024

ความคิดเห็น •

  • @nilsonjosefotografo5224
    @nilsonjosefotografo5224 ปีที่แล้ว +5

    De longe! Far... far... away... A melhor explicação de adEventListener que eu vi até hj. MUITO SHOW DE BOLA! Obrigado.

  • @reinaldosantospereira4478
    @reinaldosantospereira4478 ปีที่แล้ว +6

    Ver a alegria e empolgação do professor ensinando cada linha de código e funcionamento so mostra o quanto ele ama o que faz, PROFESSOR O SENHOR TEM UM "DOM", Obrigado por disponibilizar esse curso de graça, Prometo que assim que tiver um retorno financeiro eu ajudarei esse canal com todo oprazer.❤

  • @dinfass.marques7962
    @dinfass.marques7962 2 หลายเดือนก่อน

    Você é um professor maravilhoso, um forte abraço

  • @willi_ansilvaoliveira
    @willi_ansilvaoliveira 2 หลายเดือนก่อน

    pessoal eu estou na aula 70 , no caso uma dica que aprendi , se ver que o conteudo ficou extenso volta desdo incio , eu estou fazendo a 2 resvisao , e indo para aula 70 devolta , no caso quando voce reve o conteudo isso ajuda a consildar , nao se assuste aproveite cada aula que o mestre criou para nois

  • @maiadidata
    @maiadidata ปีที่แล้ว +2

    boa noite Professor, não tenho palavras para agradecer por disponibilizar um conteúdo de altíssima qualidade de forma gratuita, com exemplos realmente práticos sem enrolação, ainda não cheguei no controle de estoque, estou me segurando pra ir no passo a passo, enquanto muitos instrutores mostram calculadoras, o senhor nos proporciona AULAS com conteúdos que realmente poderemos replicar na vida real, que Deus o abençoe sempre e sempre.

  • @DouglasSantos-vd2wi
    @DouglasSantos-vd2wi 4 หลายเดือนก่อน +1

    ótima aula professor! está de parabéns!

    • @cfbcursos
      @cfbcursos  3 หลายเดือนก่อน

      Muito obrigado

  • @DanielSantos-mc8fi
    @DanielSantos-mc8fi 7 หลายเดือนก่อน +1

    Realmente, é muito satisfatório ver o quanto complexo pode ser um código, vc sente como se fosse "mágica" cada dia mais apaixonado por programação

  • @adryelmartins6943
    @adryelmartins6943 ปีที่แล้ว

    Sensacional, criou um curso excelente!!!!

  • @SLZGAM3R
    @SLZGAM3R 2 ปีที่แล้ว +3

    Eu estava precisando dessa aula kkk, ir direto pro React.js não da mesmo

    • @kakashisuzuki8068
      @kakashisuzuki8068 2 ปีที่แล้ว +2

      Ir pra React sem saber o básico de Javascript é foda kkk Muito eu da vida KKKKKKKKKKKKKKKKKKKK

  • @kauaclayton9969
    @kauaclayton9969 ปีที่แล้ว +4

    fim aqui depois do curso básic do gustavo guanabara. Eu gosto do seu método mas ele para mim é meio rápido, gosto do senhor para rever conceitos e aprofundar eles

    • @cfbcursos
      @cfbcursos  ปีที่แล้ว

      Top, #tmj. Bons estudos

    • @esdrika360
      @esdrika360 ปีที่แล้ว +1

      Guanabara deu poucas aulas, aqui tem mais de 200, aqui o professor explicou em detalhes o que significa tudo que está passando.

  • @kauamoreira2189
    @kauamoreira2189 2 ปีที่แล้ว +4

    Professor, terminando essa sequência de vídeos sobre o DOM, você poderia soltar um desafio pra gente resolver.

  • @sidartaagapitorocha1723
    @sidartaagapitorocha1723 ปีที่แล้ว

    Como eu só conheci esse canal agora?????
    Parabéns
    Parabéns
    Parabéns

  • @Gustavooliveira-zl7ru
    @Gustavooliveira-zl7ru 2 ปีที่แล้ว +2

    SHOW

  • @gleitonbritotattoo1139
    @gleitonbritotattoo1139 ปีที่แล้ว

    primeiramente agradecer pelas aulas

  • @esdrika360
    @esdrika360 ปีที่แล้ว

    Agoraa eu entendi esse maldito evt kkkkkkkkk Obrigado, agora é praticar.

  • @rapaduraman3543
    @rapaduraman3543 ปีที่แล้ว +1

    pela primeira vez tentando a muito tempo aprender javascript, finalmente entendi esses conceitos de eventos, muito obrigado pela didática!✌🙏

  • @mateusdinotto
    @mateusdinotto ปีที่แล้ว

    Muito interessante pra quem quer fazer accordion

  • @jeffersonalves6522
    @jeffersonalves6522 ปีที่แล้ว +1

    Tenho feito progresso nos estudos de js , obrigado professor, não sei se acontece com mais alguém ?!
    Quando sintaxe básica é reescrita limita o entendimento do aluno , pois o mesmo não sabe separar os metodos pela sua complexidade antes do entendimento
    Sei que na Internet pode voltar o video várias vezes
    Mas uma uma marcação em aula separando a complexidade tornaria a aula mais linear

  • @joao7791
    @joao7791 ปีที่แล้ว

    Fantástico professor!

  • @asrem21y72
    @asrem21y72 2 ปีที่แล้ว +1

    Conhecimento +1

  • @b.soares545
    @b.soares545 ปีที่แล้ว

    Sua mediação de ensino é maravilhosa, parabéns, professor!

  • @edimirk9
    @edimirk9 2 ปีที่แล้ว +1

    Vc tem o dom de ensinar parabéns o difícil ficou fácil

  • @t.t.o.p
    @t.t.o.p ปีที่แล้ว

    essa aula foi fenomenal !

  • @caiopjv
    @caiopjv 2 ปีที่แล้ว

    Está ficando cada vez melhor!

  • @joaopoliceno8844
    @joaopoliceno8844 ปีที่แล้ว

    Muito bom,

  • @uosp3.
    @uosp3. 2 ปีที่แล้ว +8

    As aulas estão cada dia melhor, mas da forma que o professor faz de ir mudando e apagando o que fez antes, me confunde um pouco e no final fica so o que ele fez por último, então em estou fazendo assim: Vou fazendo tudo que ele faz e não apago, para evitar erro ou duplicidade eu dou nomes diferentes para as constantes, assim no final eu fico com tudo que ele passou sem erros e faço os comentários no código para facilitar. No caso dessa aula eu fiz da seguinte forma:
    const c1=document.getElementById('c1')
    //obter o elemento que se quer manipular
    const c2=document.querySelector('#c2')
    //a linha acima faz o mesmo efeito da anterior, para outro elemento.
    const c3=document.querySelector('#c3')
    const msg=()=>{
    alert('Clicou1')
    }
    c1.addEventListener('click', msg)//pega o click em c1 e executa a função anônima msg=()
    c2.addEventListener('click', ()=>{//pega o click em c2 e executa a funçao anônima que, neste caso, ja está dentro do addEventListener, MAS poderia tb chamar a funçõ msg dentro das chaves que faz o mesmo efeito.
    alert('clicou2')
    })
    c3.addEventListener('click', (evt)=>{
    alert('clicou3')
    console.log(evt.target)//mostra no console o elemento que foi clicado.
    const el=evt.target
    el.classList.add('destaque')//faz o elemento clicado receber a classe "destaque"
    })
    const cursos=[...document.querySelectorAll('.curso')]
    cursos.map((el2)=>{
    el2.addEventListener('click', (evt2)=>{
    const el2=evt2.target
    el2.classList.add('destaque')
    console.log(el2.innerHTML + " foi clicado")
    })
    })

  • @batata_com_batata
    @batata_com_batata ปีที่แล้ว

    14:00
    Eu percebi que é possível tambem utilizar o parametro do map para poder fazer isso, ao invés de usar o do listener, mas isso é da preferencia do programador. Eu necessariamentee prefiro usar o parametro do map, que já vai no element, o target obtéem também o elemento, não é inútil, de fato

    • @batata_com_batata
      @batata_com_batata ปีที่แล้ว

      @@wellingtonoliveira7656 sabe a array cursos? ela contem todos os elementos html que sao cursos, certo? quando ele foi adicionar os eventos, ele passou um parametro chamado evt, e usou ele pra se referenciar o elemento. mas nao é necessário, ele poderia usar o paramentro passado no map()

  • @TuxDoido
    @TuxDoido ปีที่แล้ว

    Opaz excelente aula!!!!!! Mas eu gostaria de saber qual foi a tecla de atalho para abrir o menu aos 3:00 de video, alguém sabe?

  • @MarcelloJunqueira
    @MarcelloJunqueira 2 ปีที่แล้ว +1

    Professor, primeiramente, parabéns pelas aulas, estou sempre acompanhando e aprendendo. Qual o evento propaga em outro elemento em um click só, como fazer para resolver? Obrigado

  • @AndersonSantos-ur4nf
    @AndersonSantos-ur4nf 2 ปีที่แล้ว

    Parabéns, muito didático e útil esse conteúdo.

  • @gabrielalvespereira7359
    @gabrielalvespereira7359 ปีที่แล้ว

    Mais um aulão pra conta, vlw fessor!

  • @Tailan001
    @Tailan001 ปีที่แล้ว

    insano, n entendi quase nd mesmo assistido com muita atenção as outras aulas

  • @asrem21y72
    @asrem21y72 2 ปีที่แล้ว +2

    Vai rolar PDF do JS moderno?

    • @cfbcursos
      @cfbcursos  2 ปีที่แล้ว +2

      Não, esse eu não escrevi material...

  • @claudineyryan4276
    @claudineyryan4276 2 ปีที่แล้ว +1

    Percebi que ao usar o for of, ao inves do map, não se torna necessário usar spread.

    • @Davi-hk8fg
      @Davi-hk8fg 2 ปีที่แล้ว

      Mesmo assim ainda é mais fácil usar o spread 😅

  • @FernandoSantos-tv8bp
    @FernandoSantos-tv8bp 2 ปีที่แล้ว

    7:57 A função sempre tem que ficar em cima do seu chamador?

    • @gabrielalvespereira7359
      @gabrielalvespereira7359 ปีที่แล้ว

      Sim, pq a leitura é feita linha a linha, ou seja, naquele momento (chamada antes da declaração) chamou algo que ainda era desconhecido para o navegador.

  • @gleitonbritotattoo1139
    @gleitonbritotattoo1139 ปีที่แล้ว

    não entendi o terceiro exemplo q funcionou sem a ligação msg com html

  • @andreluuh9450
    @andreluuh9450 ปีที่แล้ว

    e necessario decorar codigos para programar me diz oq tem q fazer eu me sinto chateado por nao decorar esses codigos

  • @geisonrizzo3115
    @geisonrizzo3115 ปีที่แล้ว

    Precisava usar no add.event um array de input number como posso pegar os value dele? Se não for array posso por document.querySelector('#nome').value mais e se for no array não está entrando tentei com map também não foi consegue me ajudar??

  • @eliascassim367
    @eliascassim367 2 ปีที่แล้ว

    Professor, criei uma página html no sketch do meu esp8266, acesso atráves do celular e até criei links para enviar comandos para o esp para controlar portas, funções, etc...
    Como eu deveria atribuir javascript e css nele ?
    Se eu juntar tudo em um mesmo arquivo não tem problema ? (claro que cada linguagem em seu aninhamento), ou teria outro método para utilizar arquivos separados ?

  • @caiopjv
    @caiopjv 2 ปีที่แล้ว

    No final deu tudo certo. Mas a variável "el" não foi declarada duas vezes (uma vez no map, e uma vez como const)? Não era para ter dado erro?

    • @gabrielalvespereira7359
      @gabrielalvespereira7359 ปีที่แล้ว +1

      Ele trabalhou com funções aninhadas, sendo assim as variáveis são independentes. Ele poderia até ter dado outro nome para a variável mas preferiu manter o msm nome para deixar o código ainda mais limpo.
      Ele poderia ter feito assim que tbm funcionaria.
      cursos.map((el)=>{
      el.addEventListener("click",(evt)=>{
      const nomeQualquer=evt.target
      nomeQualquer.classList.add('destaque')
      console.log(nomeQualquer.innerHTML + " foi clicado")
      })
      })
      Veja a aula sobre funções aninhadas que vai ficar mais claro.
      Abraço e sucesso!

  • @maviaelbeserra948
    @maviaelbeserra948 2 ปีที่แล้ว +1

    Professor quem tiver uma dúvida, posso fazer uma pergunta, ou vai atrapalhar?

    • @cfbcursos
      @cfbcursos  2 ปีที่แล้ว +1

      Pode fazer a pergunta

    • @maviaelbeserra948
      @maviaelbeserra948 2 ปีที่แล้ว +1

      @@cfbcursos professor, tem como eu colocar em uma pagina de html, dois caminhos distintos de javascript, e que um possa compreender o outro?

    • @FernandoSantos-tv8bp
      @FernandoSantos-tv8bp 2 ปีที่แล้ว +1

      @@maviaelbeserra948 Boa pergunta, eu nunca pensei nisso.

    • @maviaelbeserra948
      @maviaelbeserra948 2 ปีที่แล้ว

      @@FernandoSantos-tv8bp eu preciso dessa pergunta para validar determinados email's de acesso em outra acima javascript

    • @gabrielalvespereira7359
      @gabrielalvespereira7359 ปีที่แล้ว +1

      @@maviaelbeserra948 Pode sim meu caro, como o código lê linha a linha, ele vai interpretar o primeiro script e depois o segundo script.
      Pelo que percebi você quer que os dois sejam lidos quase que em simultâneo correto? dai eu criaria um terceiro script para fazer este controle de modo que hora você chame as funções de um script e hora chame o do outro script. Abraço e sucesso.

  • @Mandioquinho
    @Mandioquinho ปีที่แล้ว +1

    Professor só uma observação a minha função deu erro e pode ser que mais alguém futuramente tenha o mesmo erro que eu tive então vou postar a solução que encontrei junto com a explicação
    let cursos = [...document.querySelectorAll(".curso")];
    Função antiga
    let cursos = [...document.querySelectorAll(".curso")];
    cursos.map((el)=>{
    el.addEventListener("click", (evt)=>{
    const el =evt.target.classList.add("destaque");
    console.log(el.id + " Clicado");
    })
    });
    ================================
    Função refatorada com a explicação
    cursos.map((el)=>{
    el.addEventListener("click", (evt)=>{
    evt.target.classList.add("destaque");
    console.log(el.innerHTML + " Clicado");
    })
    });
    O erro ocorre porque a variável el dentro da função de callback do evento click está sendo reatribuída com o valor retornado pelo método classList.add("destaque").
    A função classList.add() não retorna o elemento em si, mas sim o resultado da adição da classe ao elemento. Portanto, ao fazer const el = evt.target.classList.add("destaque"), você está sobrescrevendo a variável el com o resultado da adição da classe.
    Quando você tenta acessar el.id no console.log, ocorre um erro porque a variável el já não é mais o elemento original, mas sim o resultado da operação classList.add(). E esse resultado não possui a propriedade id, causando o erro.
    Para corrigir isso, você pode remover a reatribuição da variável el dentro da função de callback e acessar diretamente evt.target.id no console.log:

  • @ShadowbearsCamisas
    @ShadowbearsCamisas 4 หลายเดือนก่อน

    e eu me matando pensando como que fazia pra combinar o eventListener com o QuerySelectionAll, aii eu vi o map e falei : "puts meu kkk"

  • @ricardoerickrebelo3380
    @ricardoerickrebelo3380 ปีที่แล้ว

    for(let i of cursos) i.addEventListener...

  • @RottweilerPastorAlemao
    @RottweilerPastorAlemao 7 หลายเดือนก่อน

    to tentando fazer algo simples e to quebrando a cabeça. Eu criei uma pagina com um enunciado e 4 botoes , eu preciso ler o "value" de cada botao, se a pessoa clicar no botao correto aparece uma mensangem "parabens", porem só dá erro, coloco no console.log(botao[i].value) aparece o erro que é "value é indefinido". Já usei o laço for, já usei map, ja tentei de diversas formas, já pesquisei toneladas de sites e a unica que deu certo é fazer um addEventListener para cada botao que nao é nada legal. Eu cronometro as horas que estudo, pois cada dia estudo um pouco, nessa brincadeira já estou há 5 horas. o que fazer, desistir e prosseguir com os estudos continuos ou insistir?

    • @jotaerrybh
      @jotaerrybh 6 หลายเดือนก่อน

      Talvez já tenha conseguido resolver, mas vou deixar uma contribuição para futuros aprendizes:
      Sempre que tiver uma dúvida deste tipo, poste o seu código também. Vai ficar mais fácil da galera analisar e ter uma resposta mais certeira.
      Sem ver o seu código, é dificil ter uma resposta para ti.
      Se ainda não tiver conseguido resolver, coloca o código aqui. Se já resolveu, coloque a solução encontra.
      Abraços.

  • @FelipeGustavoaqui
    @FelipeGustavoaqui ปีที่แล้ว

    Apenas pela aula, não consegui compreender muito bem o propósito do "target"

  • @eletronicam
    @eletronicam ปีที่แล้ว +1

    Então você cria o elemento html e cria a função javascript, já é o suficiente para funcionar, aí você usa addEventListener para continuar fazendo a mesma coisa? kkkk. Trabalheira desnecessária.