No comando addEventListener(), ele colocou "click" ao invés de "onclick", por quê ?
No comando addEventListener(), ele colocou "click" ao invés de "onclick", por quê ?
Porque o addEventListener recebe click como argumento, não onclick. O onclick é uma função, enquanto click é apenas uma string que você fornece como argumento. Uma dica: não sei se é uma regra geral, mas quando você fornece um evento para o addEventListener, você simplesmente tira o "on" do nome do evento e passa o evento em si.
Em vez de onmouseover, apenas mouseover, e por aí vai...
Então poderia ser qualquer nome, não é uma sintaxe da linguagem ?
Qualquer nome, desde que seja aceitável como argumento, claro. É uma string, que está dentro do conjunto de strings que a função addEventListener entende como evento.
.onclick() = Função
"click" = Argumento em string dentro de uma biblioteca de eventos que é reconhecida como se fosse a função .onclick()
Quando você vai inserir o evento diretamente no elemento HTML, você vai acabar utilizar o "on", por exemplo:
<input type="text" name="teste" onclick="minhaFuncaoJavascript();">
A explicação do exemplo acima seria: ao clicar no campo texto, executar a função minhaFuncaoJavascript();
Para não ter que fazer isso, você utiliza o listener, então não se mexe no layout, e se faz o vinculo do evento ao elemento em separado.
Nesse caso o "on" deixa de existir e você usa apenas o nome do evento que deseja programar.
Consulte a documentação para saber quais eventos você pode passar como argumento: https://developer.mozilla.org/en-US/docs/Web/Events
excelentes explicações, obrigado.