Domine a Integração: JavaScript e HTML para Iniciantes
Eventos em JavaScript: onClick e onChange Interativos
Os eventos são fundamentais para criar páginas dinâmicas e interativas, pois permitem capturar as ações do usuário e responder a elas de forma imediata. Neste estudo, veremos como funcionam os eventos no JavaScript, incluindo exemplos práticosClasses e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. do uso de onClick, onChange e outros eventos importantes para a interação do usuário.
1. O que são Eventos no JavaScript?🔗
Em uma página web, eventos são ocorrências ou ações específicas que acontecem, como um clique de mouse, o pressionar de uma tecla ou a mudança de valor em um campo de formulárioIntrodução a Formulários: `<form>`, `action`, `method`Explore este tutorial sobre formulários HTML, conhecendo a função dos atributos action e method para envio seguro e organizado dos dados do usuário.. No JavaScript, podemos ouvir (“escutar”) esses eventos e reagir a eles através de funções
Funções e Escopo no JavaScriptAprenda a utilizar funções e escopos em JavaScript com nosso guia prático. Melhore sua organização de código e evolua seus projetos com boas práticas., chamadas de callbacks
Callbacks, Promises e Async/AwaitAprenda como aplicar programação assíncrona em JavaScript utilizando callbacks, promises e async/await. Melhore o fluxo do seu código de forma prática., que são executadas quando o evento ocorre.
Exemplos de eventos comuns:
- Clique em um botão (click)
- Alteração em um campo de texto
Campos de Entrada: `<input type='text'>`, `password`, `email`Este tutorial ensina os conceitos essenciais de inputs text, password e email, demonstrando atributos e boas práticas para formulários em HTML. (change)
- Passar o mouse em cima de um elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. (mouseover)
- Tecla pressionada no teclado (keydown)
- Perda de foco de um campo de formulário
Introdução a Formulários: `<form>`, `action`, `method`Explore este tutorial sobre formulários HTML, conhecendo a função dos atributos action e method para envio seguro e organizado dos dados do usuário. (blur)
2. Maneiras de Lidar com Eventos🔗
Existem diversas formas de interagir com eventos no JavaScriptIntrodução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente.. Duas maneiras bastante conhecidas são:
1. Atributos inline no HTMLO que é HTML? Fundamentos, História e Evolução da LinguagemDescubra a origem e evolução do HTML, entendendo sua importância na estrutura da web e como influenciou o desenvolvimento digital moderno.
Você insere o código JavaScriptIntrodução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente. diretamente na tag HTML por meio de atributos como
onclick
, onchange
etc.
<button onclick="alert('Você clicou em mim!')">Clique Aqui</button>
2. Listeners de Evento (Event Listeners)
Você seleciona o elemento via JavaScriptIntrodução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente. e adiciona o evento separadamente com métodos como
addEventListener
.
<button id="meuBotao">Clique Aqui</button> <script>
const botao = document.getElementById('meuBotao'); botao.addEventListener('click', () => { alert('Você clicou em mim!'); });
</script>
- Em geral, recomenda-se o uso de Event Listeners porque o HTML fica mais limpo e desacoplado da lógica JavaScript
Introdução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente., facilitando a manutenção do código.
3. onClick: Voltado para Cliques🔗
O onClick é um dos eventos mais usados. É disparado quando o usuário clica em um elementoTags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis., normalmente em botões. Em inline, ficaria assim:
<button onclick="minhaFuncao()">Clique-me!</button> <script>
function minhaFuncao() { alert('Botão clicado!'); }
</script>
E com Event Listeners:
<button id="botaoClick">Clique-me!</button> <script>
const button = document.getElementById('botaoClick'); button.addEventListener('click', () => { alert('Botão clicado via listener!'); });
</script>
Executando Ações Mais Elaboradas
Podemos fazer muito mais do que simples alerts. Por exemplo, podemos alterar a cor de um elementoTags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. na tela:
<div id="areaMensagem" style="width: 100px; height: 100px; background-color: lightgreen;"> Clique no botão para mudar minha cor </div> <button id="botaoCor">Mudar Cor</button> <script>
const divMensagem = document.getElementById('areaMensagem'); const botaoCor = document.getElementById('botaoCor'); botaoCor.addEventListener('click', () => { divMensagem.style.backgroundColor = 'lightblue'; });
</script>
4. onChange: Detectando Mudanças🔗
O evento onChange é muito útil para lidar com alterações em campos de formulárioIntrodução a Formulários: `<form>`, `action`, `method`Explore este tutorial sobre formulários HTML, conhecendo a função dos atributos action e method para envio seguro e organizado dos dados do usuário., selects ou qualquer elemento que aceite entrada do usuário. Ele é disparado quando o valor de um elemento
Tags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. é modificado e depois perde o foco (ou, em alguns casos, imediatamente quando o valor muda).
Exemplo com Input de Texto
<label for="nome">Nome:</label> <input type="text" id="nome" /> <div id="resultado"></div> <script>
const campoNome = document.getElementById('nome'); const divResultado = document.getElementById('resultado'); campoNome.addEventListener('change', (evento) => { divResultado.textContent = `O valor digitado foi: ${evento.target.value}`; });
</script>
Observe que usamos (evento)
para recuperar o valor do input por meio de evento.target.value
. Isso dá flexibilidade para manipular o conteúdo do campo em tempo real ou depois que a mudança acontece.
Exemplo com Seleção de Opções (Select)
<label for="corFavorita">Cor favorita:</label> <select id="corFavorita"> <option value="Vermelho">Vermelho</option> <option value="Verde">Verde</option> <option value="Azul">Azul</option> </select> <div id="corEscolhida"></div> <script>
const selectCor = document.getElementById('corFavorita'); const divCorEscolhida = document.getElementById('corEscolhida'); selectCor.addEventListener('change', (event) => { divCorEscolhida.textContent = `Você escolheu ${event.target.value}`; });
</script>
5. Outros Eventos Importantes🔗
Embora onClick e onChange sejam muito utilizados, existem muitos outros eventos relevantes:
Evento | Descrição |
---|---|
onMouseOver | Disparado quando o mouse entra na área de um elemento. |
onMouseOut | Disparado quando o mouse sai da área de um elemento. |
onKeyDown | Ocorre quando uma tecla é pressionada. |
onKeyUp | Ocorre quando a tecla é solta. |
onFocus | Disparado quando um elemento recebe foco (ex: ao clicar em um campo de texto). |
onBlur | Disparado quando um campo de formulário perde foco. |
onSubmit | Ocorre ao submeter um formulário. |
Esses eventos podem ser adicionados de forma similar, usando addEventListener('nomeDoEvento', callback
ou inline no HTMLCallbacks, Promises e Async/AwaitAprenda como aplicar programação assíncrona em JavaScript utilizando callbacks, promises e async/await. Melhore o fluxo do seu código de forma prática.)
O que é HTML? Fundamentos, História e Evolução da LinguagemDescubra a origem e evolução do HTML, entendendo sua importância na estrutura da web e como influenciou o desenvolvimento digital moderno..
6. Manipulando o Objeto de Evento🔗
Sempre que um evento ocorre, o JavaScriptIntrodução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente. cria um objeto
Fundamentos de Arrays e ObjetosDomine arrays e objetos em JavaScript com este tutorial narrativo. Aprenda a utilizar métodos e exemplos práticos para aprimorar seu desenvolvimento web. de evento com várias propriedades
Classes e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. e métodos úteis. Nos exemplos anteriores, vemos que o parâmetro
event
ou e
contém informações importantes como event.target
(elementoTags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. que disparou o evento),
event.currentTarget
e muito mais.
Algumas propriedadesClasses e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. que podem ser úteis:
target
: o elementoTags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. que acionou o evento.
type
: o tipo de evento disparado (ex: clique, change etc.).preventDefault()
: impede o comportamento padrão, por exemplo, evitar que um link redirecione a página.
Exemplo simples de uso de event.preventDefault()
em um formulárioIntrodução a Formulários: `<form>`, `action`, `method`Explore este tutorial sobre formulários HTML, conhecendo a função dos atributos action e method para envio seguro e organizado dos dados do usuário.:
<form id="meuFormulario"> <label for="campoTexto">Digite algo:</label> <input type="text" id="campoTexto" /> <button type="submit">Enviar</button> </form> <script>
const formulario = document.getElementById('meuFormulario'); formulario.addEventListener('submit', (event) => { event.preventDefault(); alert('Formulário bloqueado, não enviamos ao servidor.'); });
</script>
7. Conclusão🔗
Os eventos são peças-chave para tornar uma página mais interativa e criar uma experiência dinâmica para o usuário. Os principais destaques sobre eventos em JavaScriptIntrodução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente. são:
1. Entender como e quando cada evento é disparado (cliques, mudanças, teclado, mouse etc.).
2. Escolher a melhor maneira de adicionar eventos (inline vs. addEventListener
) de acordo com a estrutura do projeto.
3. Explorar o objetoFundamentos de Arrays e ObjetosDomine arrays e objetos em JavaScript com este tutorial narrativo. Aprenda a utilizar métodos e exemplos práticos para aprimorar seu desenvolvimento web. de evento, que oferece informações e métodos
Classes e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. para controlar o fluxo de execução.
4. Aplicar boas práticas, como separar o código JavaScriptIntrodução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente. do HTML, organizando o projeto de forma mais limpa e sustentável.
Com esses conceitos, você tem o alicerce para construir interações ricas e responsivasResponsividade com HTML: Viewport e `<picture>`Descubra como usar a meta viewport e o elemento picture para imagens responsivas, garantindo desempenho, usabilidade e SEO de qualidade. em suas aplicações web, ampliando a capacidade de engajamento e usabilidade de suas páginas.
Autor: Marcelo V. Souza - Engenheiro de Sistemas e Entusiasta em IoT e Desenvolvimento de Software, com foco em inovação tecnológica.