Até agora, usamos principalmente o evento click. Mas o mouse oferece muitos outros eventos que permitem criar interações ricas e precisas.

Nesta aula, vamos entender os principais eventos de mouse, suas diferenças e quando usar cada um.

🎯 Objetivo da aula

Ao final desta aula, você será capaz de:

  • Conhecer os principais eventos de mouse
  • Entender diferenças importantes entre eventos parecidos
  • Usar eventos corretamente em interfaces reais
  • Evitar bugs comuns relacionados ao mouse

O evento click

O click é disparado quando o usuário clica com o mouse em um elemento.

 
  const botao = document.getElementById("btn");
  botao.addEventListener("click", () => 
  {
    console.log("Botão clicado");
  });
 console.log("Botão clicado"); // Saída será exibida ao clicar no botão 

É o evento mais comum e mais usado.

mousedown e mouseup

Esses eventos detectam o pressionar e soltar do botão do mouse.

 
  botao.addEventListener("mousedown", () => 
  { 
    console.log("Mouse pressionado"); 
  });
    botao.addEventListener("mouseup", () => 
    {
      console.log("Mouse solto");
    });
 console.log("Mouse pressionado"); // Ao pressionar console.log("Mouse solto"); // Ao soltar 

Eles são úteis para:

  • Arrastar elementos
  • Efeitos de botão pressionado

mouseenter e mouseleave

Esses eventos detectam quando o mouse entra ou sai de um elemento.

 
  botao.addEventListener("mouseenter", () => 
  { 
    console.log("Mouse entrou"); });
    botao.addEventListener("mouseleave", () => 
    {
      console.log("Mouse saiu");
    });
 console.log("Mouse entrou"); // Quando entra no elemento console.log("Mouse saiu"); // Quando sai do elemento 

Importante:

  • Não propagam para elementos filhos
  • São ideais para efeitos de hover

mouseover e mouseout

Esses eventos são parecidos, mas se comportam de forma diferente.

 
  botao.addEventListener("mouseover", () => 
  { 
    console.log("Mouse sobre o elemento"); });
    botao.addEventListener("mouseout", () => 
    {
      console.log("Mouse saiu do elemento");
    });

Diferença importante:

  • mouseover e mouseout disparam ao passar por filhos
  • mouseenter e mouseleave não
Para a maioria dos casos de hover, prefira mouseenter e mouseleave.

mousemove

O mousemove é disparado sempre que o mouse se move sobre um elemento.

 
  document.addEventListener("mousemove", (event) => 
  { 
    console.log(event.clientX, event.clientY); 
  }); 
 
    console.log(event.clientX, event.clientY); // Saída será a posição do mouse na tela 

Use com cuidado:

  • Dispara muitas vezes
  • Pode afetar performance

wheel (mousewheel)

O evento wheel detecta o uso da roda do mouse.

 
      document.addEventListener("wheel", (event) =>
      { 
        console.log(event.deltaY); 
      }); 
 console.log(event.deltaY); // Valor positivo ou negativo dependendo da rolagem 

Muito usado em:

  • Efeitos de scroll
  • Zoom

Resumo rápido dos eventos de mouse

  • click → clique
  • mousedown / mouseup → pressionar/soltar
  • mouseenter / mouseleave → entrar/sair
  • mouseover / mouseout → entrar/sair com propagação
  • mousemove → movimento
  • wheel → rolagem
Escolher o evento certo evita bugs e melhora performance.

Resumo da aula para nunca mais esquecer

  • O mouse possui vários tipos de eventos
  • Eventos parecidos têm comportamentos diferentes
  • mouseenter e mouseleave são ideais para hover
  • mousemove deve ser usado com cuidado
  • Entender eventos evita comportamentos inesperados

Na próxima aula, vamos estudar os eventos de teclado e criar interações baseadas em teclas.


HARDWARE

Entendendo o seu computador

O que há dentro do meu computador?

Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

O ábaco é o dispositivo de cálculo mais antigo construído e conhecido pelo homem. Suas formas mais primitivas datam de 400 a.C. e eles foram encontrados na China e na Babilônia. Para saber mais sobre a história dos computadores, clique aqui.


O console Nintendo Entertainment System (NES), da Nintendo, detém o recorde de videogame mais clonado em todo o mundo. Já foram catalogados mais de 300 aparelhos diferentes capazes de reproduzir seus jogos! Saiba mais sobre ele aqui.


A empresa Universal City Studios, detentora dos direitos autorais do King Kong, processou a Nintendo logo após o lançamento de Donkey Kong, pois segundo ela, o game violava os seus direitos. Ela venceu o processo e recebeu da Nintendo uma indenização de quase 2 milhões de dólares.


O título Tetris detém o recorde de jogo mais adaptado de todos os tempos. No total foram mais de 60 plataformas diferentes que receberam alguma versão do quebra-cabeças criado por Alexey Pajitnov. Conheça mais sobre este incrível jogo clicando aqui.


O mouse foi criado em 9 de dezembro de 1968, por um americano chamado Douglas Engelbart, que o batizou de "XY Position Indicator for a Display System". Conheça a história do mouse clicando aqui.