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?

Em 1949 a revista Popular Mechanics fez uma previsão para o futuro, dizendo: "Um dia os computadores pesarão menos do que 1,5 tonelada". E pensar que temos smartphones capazes de realizar milhões de vezes mais operações do que os computadores daquela época.


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.


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.


As primeiras máquinas de fliperama do mundo a utilizarem moedas, chamadas de Galaxy Game, custavam mais de 20 mil dólares para serem produzidas. Saiba mais sobre elas aqui.


Nos primeiros oito dias após o lançamento do console Nintendo Wii foram vendidas 600 mil unidades. Isso equivale a quase um por segundo e estes incríveis números são referentes às vendas apenas nos EUA!