Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Dúvida no Ex. 1 da Aula 6 - Eventos

Estou com um problema, quando eu faço isso :

botao.addEventListener("click", alert("Calculando IMCs"));

O alert aparece antes de eu apertar o botão.

Agora se eu faço isso :

botao.addEventListener("click", function(){

alert("Calculando IMCs");

});

Funciona normalmente, alguém poderia me explicar o porquê ?

3 respostas

Você está dando um alert não quando você chama uma função ao clicar o botão, mas sim quando carregar a página.

Por que ? Eu relacionei o alert para o evento do botão

solução!

O navegador está lendo este alert direto e não quando você clica no botão, isso acontece porque ele "leu" este alert e já o interpretou. Esta função recebe como parâmetro as seguintes informações:

  • O "tipo", uma função e usecapture;

    No seu caso, tente separar a função, para deixar o código um pouco mais limpo. Ex:

document.getElementById("myBtn").addEventListener("click", myFunction);

function myFunction() { document.getElementById("demo").innerHTML = "Hello World"; }

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software