Nas últimas aulas, aprendemos a criar elementos dinamicamente, delegar eventos e escrever código performático no DOM.

Agora vamos fechar esse bloco entendendo a forma mais correta, limpa e performática de alterar o visual da página usando JavaScript:

manipulando classes CSS.

🎯 Objetivo da aula

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

  • Adicionar classes CSS via JavaScript
  • Remover classes CSS
  • Alternar classes dinamicamente
  • Verificar se um elemento possui uma classe
  • Controlar o visual da interface sem usar estilos inline

Por que manipular classes (e não estilos)?

É tecnicamente possível alterar estilos direto pelo JavaScript:

 element.style.color = "red"; element.style.fontSize = "20px"; 

Mas isso não é a melhor prática.

O ideal é manter a separação:

  • HTML → estrutura
  • CSS → visual
  • JavaScript → comportamento
Manipular classes mantém o código mais organizado e performático.

Conhecendo o classList

Para trabalhar com classes CSS no JavaScript, usamos a propriedade classList.

Ela fornece métodos simples e poderosos para lidar com classes.

Adicionando uma classe

Usamos classList.add:


        const caixa = document.getElementById("caixa"); 
        caixa.classList.add("ativo"); 

Isso adiciona a classe ativo ao elemento.

Removendo uma classe

Usamos classList.remove:

 caixa.classList.remove("ativo"); 

Alternando classes (toggle)

O método mais usado no dia a dia é toggle.

Ele:

  • Adiciona a classe se não existir
  • Remove a classe se já existir
 caixa.classList.toggle("ativo"); 

Perfeito para:

  • Menus
  • Modais
  • Botões on/off

Verificando se uma classe existe

Podemos verificar se um elemento possui uma classe usando contains.

 if (caixa.classList.contains("ativo")) { console.log("A caixa está ativa"); } 
 console.log("A caixa está ativa"); // Saída será exibida se a classe existir 

Exemplo real: botão que ativa/desativa

HTML:

 <button id="btn">Ativar</button> <div id="painel">Painel</div> 

CSS:

 .painel-ativo { background: #428bca; color: white; padding: 10px; } 

JavaScript:

 const botao = document.getElementById("btn"); const painel = document.getElementById("painel");

botao.addEventListener("click", () => {
painel.classList.toggle("painel-ativo");
});

Aqui, o JavaScript apenas controla o comportamento — o visual fica todo no CSS.

Classes e delegação de eventos

Manipulação de classes combina perfeitamente com delegação:

 document.body.addEventListener("click", (event) => { if (event.target.classList.contains("item")) { event.target.classList.toggle("selecionado"); } }); 
Esse padrão é muito usado em listas dinâmicas.

Boas práticas importantes

  • Evite style direto no JavaScript
  • Use nomes de classes semânticos
  • Deixe o CSS cuidar do visual
  • Use classList sempre que possível
Manipular estilos inline dificulta manutenção e performance.

Resumo da aula para nunca mais esquecer

  • classList controla classes CSS
  • add, remove, toggle são os principais métodos
  • Classes mantêm a separação entre JS e CSS
  • São mais performáticas que estilos inline
  • Essenciais para interfaces modernas

Com isso, fechamos um bloco essencial de DOM moderno. A partir daqui, você tem base sólida para interfaces interativas e profissionais 🚀


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?

Considerando todas as adaptações de jogos de videogame para o cinema, a mais bem sucedida foi Lara Croft: Tomb Raider, lançado em 2001 e que faturou 274 milhões de dólares. Ele foi dirigido por Simon West e estrelado pela bela Angelina Jolie.


O épico jogo River Raid, do Atari, foi desenhado e boa parte de sua programação foi feita por uma mulher: Carol Shaw, uma excelente programadora e funcionária da Activision em 1982. Saiba mais sobre a história deste incrível jogo, 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.


Apenas no ano de 1982, o clássico Pac Man vendeu mais de 400 mil máquinas de fliperama em todo o mundo e recebeu cerca de 7 bilhões de moedas nestas máquinas. Saiba mais.


Criar um jogo é muito mais complexo do que parece. São milhares, às vezes, milhões de linhas de código. Isso não é exagero! Apenas o jogo Ultima Online possui 6.006.313 linhas de programação, totalizando 25.103.295 palavras