Aulas

Curso de Javascript – Aula 6 | Manipulação do DOM

por: Bernardo Collet

atualizado há 10 meses atrás

Curso de JAVASCRIPT Aula 06 - Manipulação do DOM

A manipulação do DOM (Document Object Model) é um dos pilares fundamentais do desenvolvimento web com JavaScript. O DOM é uma representação estruturada em forma de árvore de todos os elementos HTML de uma página, permitindo que possamos acessar, modificar e interagir com esses elementos de forma dinâmica.

Através da manipulação do DOM, podemos criar interatividade em nossas páginas, responder a eventos do usuário, alterar conteúdos, estilos e atributos dos elementos e até mesmo adicionar ou remover elementos da página. Enfim, essa capacidade de modificar a estrutura e o comportamento da página em tempo real é o que torna o JavaScript uma linguagem tão poderosa para o desenvolvimento web.

Nesta jornada de aprendizado, vamos explorar as diversas técnicas e métodos disponíveis para a manipulação do DOM em JavaScript. Ou seja, compreender e dominar essa habilidade é essencial para criar experiências de usuário ricas, dinâmicas e envolventes, proporcionando aos nossos projetos web uma interação fluida e adaptável aos diferentes cenários. Enfim, vamos começar a desbravar o mundo da manipulação do DOM e elevar nossas habilidades em desenvolvimento web com JavaScript!

Interação com Elementos HTML usando JavaScript

Nesta aula, vamos explorar como interagir com elementos HTML usando JavaScript. Enfim, através do uso do Document Object Model (DOM), podemos acessar e manipular elementos da página, alterar seu conteúdo, estilos e comportamentos dinamicamente.

Acesso a Elementos

Para interagir com elementos HTML, precisamos primeiro selecioná-los através do DOM. Ou seja, podemos fazer isso usando os métodos getElementById, getElementsByClassName, getElementsByTagName ou querySelector.

Exemplo de acesso a elementos:
<!DOCTYPE html>
<html>
<head>
  <title>Exemplo de Interação com Elementos HTML</title>
</head>
<body>
  <h1 id="titulo">Título Principal</h1>
  <p class="paragrafo">Este é um parágrafo.</p>
  <button onclick="mostrarMensagem()">Clique aqui</button>
</body>
</html>
// Selecionando elementos usando getElementById
const titulo = document.getElementById("titulo");
console.log(titulo.textContent); // Output: "Título Principal"

// Selecionando elementos usando getElementsByClassName
const paragrafos = document.getElementsByClassName("paragrafo");
console.log(paragrafos[0].textContent); // Output: "Este é um parágrafo"

// Selecionando elementos usando getElementsByTagName
const botoes = document.getElementsByTagName("button");
console.log(botoes[0].textContent); // Output: "Clique aqui"

// Selecionando elementos usando querySelector
const primeiroParagrafo = document.querySelector(".paragrafo");
console.log(primeiroParagrafo.textContent); // Output: "Este é um parágrafo"

Manipulação de Elementos

Uma vez que selecionamos os elementos, podemos manipulá-los de várias maneiras. Em outras palavras, podemos alterar seu conteúdo, estilos, atributos e até mesmo adicionar ou remover classes.

Exemplo de manipulação de elementos:
<!DOCTYPE html>
<html>
<head>
  <title>Exemplo de Manipulação de Elementos HTML</title>
</head>
<body>
  <h1 id="titulo">Título Principal</h1>
  <p id="paragrafo">Este é um parágrafo.</p>
</body>
</html>
// Alterando o conteúdo do elemento
const titulo = document.getElementById("titulo");
titulo.textContent = "Novo Título";

// Alterando o estilo do elemento
const paragrafo = document.getElementById("paragrafo");
paragrafo.style.color = "blue";
paragrafo.style.fontWeight = "bold";

// Adicionando uma classe ao elemento
paragrafo.classList.add("destaque");

// Removendo uma classe do elemento
paragrafo.classList.remove("destaque");

Eventos e Interação do Usuário

Podemos também adicionar eventos aos elementos para que eles respondam às interações do usuário, como cliques, passagens do mouse, entre outros.

Exemplo de adição de evento:
<!DOCTYPE html>
<html>
<head>
  <title>Exemplo de Adição de Evento</title>
</head>
<body>
  <button id="botao">Clique aqui</button>

  <script>
    const botao = document.getElementById("botao");

    // Adicionando um evento de clique ao botão
    botao.addEventListener("click", function() {
      alert("Você clicou no botão!");
    });
  </script>
</body>
</html>

A interação com elementos HTML usando JavaScript é fundamental para criar páginas dinâmicas e responsivas. Através do DOM, podemos selecionar e manipular elementos, alterar conteúdos, estilos e atributos, bem como adicionar eventos para tornar nossa página interativa com o usuário. Enfim, com a compreensão desses conceitos, você estará mais preparado para criar experiências interativas e envolventes em suas aplicações web usando JavaScript. Ou seja, continue praticando e explorando as possibilidades da interação com elementos HTML para aprimorar suas habilidades em desenvolvimento web.

Seleção de Elementos, Manipulação de Conteúdo e Estilização

Nesta aula, vamos aprender sobre a seleção de elementos HTML, manipulação de seu conteúdo e estilização usando JavaScript. Enfim, o Document Object Model (DOM) permite que interajamos com os elementos da página, tornando possível alterar texto, adicionar ou remover elementos e aplicar estilos dinamicamente.

Seleção de Elementos

Podemos selecionar elementos HTML de várias maneiras usando métodos como getElementById, querySelector, getElementsByTagName e outros. Além disso, esses métodos nos permitem obter referências aos elementos em que estamos interessados.

Exemplo de seleção de elementos:
<!DOCTYPE html>
<html>
<head>
  <title>Exemplo de Seleção de Elementos</title>
</head>
<body>
  <h1 id="titulo">Título Principal</h1>
  <p class="paragrafo">Este é um parágrafo.</p>
  <ul>
    <li>Item 1</li>
    <li>Item 2</li>
    <li>Item 3</li>
  </ul>
</body>
</html>
// Selecionando elementos usando getElementById
const titulo = document.getElementById("titulo");
console.log(titulo.textContent); // Output: "Título Principal"

// Selecionando elementos usando getElementsByClassName
const paragrafos = document.getElementsByClassName("paragrafo");
console.log(paragrafos[0].textContent); // Output: "Este é um parágrafo"

// Selecionando elementos usando getElementsByTagName
const itens = document.getElementsByTagName("li");
console.log(itens.length); // Output: 3

// Selecionando elementos usando querySelector
const primeiroItem = document.querySelector("li");
console.log(primeiroItem.textContent); // Output: "Item 1"

Manipulação de Conteúdo

Após selecionar os elementos, podemos alterar seu conteúdo, incluindo texto, atributos e até mesmo adicionar ou remover elementos.

Exemplo de manipulação de conteúdo:
<!DOCTYPE html>
<html>
<head>
  <title>Exemplo de Manipulação de Conteúdo</title>
</head>
<body>
  <h1 id="titulo">Título Principal</h1>
  <p id="paragrafo">Este é um parágrafo.</p>
  <button onclick="alterarConteudo()">Alterar Texto</button>
</body>
</html>
function alterarConteudo() {
  // Alterando o texto do parágrafo
  const paragrafo = document.getElementById("paragrafo");
  paragrafo.textContent = "Novo parágrafo!";

  // Alterando o atributo "id" do título
  const titulo = document.getElementById("titulo");
  titulo.setAttribute("id", "novo-titulo");

  // Adicionando um novo elemento ao body
  const novoElemento = document.createElement("p");
  novoElemento.textContent = "Novo elemento adicionado!";
  document.body.appendChild(novoElemento);
}

Estilização de Elementos

Podemos aplicar estilos aos elementos HTML usando JavaScript. Enfim, podemos alterar propriedades CSS diretamente ou adicionar e remover classes para aplicar estilos pré-definidos.

Exemplo de estilização de elementos:
<!DOCTYPE html>
<html>
<head>
  <title>Exemplo de Estilização de Elementos</title>
  <style>
    .destaque {
      font-weight: bold;
      color: red;
    }
  </style>
</head>
<body>
  <p class="paragrafo">Este é um parágrafo.</p>
  <button onclick="estilizarParagrafo()">Destacar Parágrafo</button>
</body>
</html>
function estilizarParagrafo() {
  const paragrafo = document.querySelector(".paragrafo");

  // Alterando o estilo diretamente
  paragrafo.style.fontWeight = "bold";
  paragrafo.style.color = "red";

  // Adicionando uma classe para aplicar estilos pré-definidos
  paragrafo.classList.add("destaque");
}

A seleção de elementos HTML, a manipulação de seu conteúdo e a estilização usando JavaScript nos permitem criar páginas web interativas e dinâmicas. Ou seja, com o poder do DOM, podemos alterar o conteúdo, estilos e comportamento dos elementos de forma programática, respondendo a eventos e ações do usuário. Enfim, com o entendimento desses conceitos, você estará mais preparado para criar experiências de usuário envolventes e personalizadas usando JavaScript. Ou seja, continue praticando e explorando as possibilidades da seleção, manipulação e estilização de elementos para aprimorar suas habilidades em desenvolvimento web.

Manipulação de Eventos e Criação de Interatividade

Nesta aula, vamos aprender como manipular eventos em JavaScript para criar interatividade em nossas páginas web. Os eventos permitem que nossos elementos HTML respondam a ações do usuário, como cliques, passagens do mouse e pressionamento de teclas, proporcionando uma experiência mais dinâmica e envolvente.

Adição de Eventos

Para adicionar um evento a um elemento HTML, podemos usar o método addEventListener. Esse método recebe dois argumentos: o tipo de evento que queremos ouvir e uma função de callback que será executada quando o evento ocorrer.

Exemplo de adição de evento:
<!DOCTYPE html>
<html>
<head>
  <title>Exemplo de Adição de Evento</title>
</head>
<body>
  <button id="botao">Clique aqui</button>

  <script>
    const botao = document.getElementById("botao");

    // Adicionando um evento de clique ao botão
    botao.addEventListener("click", function() {
      alert("Você clicou no botão!");
    });
  </script>
</body>
</html>

Eventos Comuns

Existem diversos tipos de eventos que podemos ouvir, tais como:

  • click: ocorre quando o elemento é clicado.
  • mouseover: ocorre quando o cursor do mouse está sobre o elemento.
  • mouseout: ocorre quando o cursor do mouse sai do elemento.
  • keydown: ocorre quando uma tecla é pressionada.
Exemplo de uso de eventos comuns:
<!DOCTYPE html>
<html>
<head>
  <title>Exemplo de Eventos Comuns</title>
</head>
<body>
  <button id="botao">Clique aqui</button>
  <div id="elemento">Passe o mouse aqui</div>
  <input type="text" id="entrada">

  <script>
    const botao = document.getElementById("botao");
    const elemento = document.getElementById("elemento");
    const entrada = document.getElementById("entrada");

    botao.addEventListener("click", function() {
      alert("Você clicou no botão!");
    });

    elemento.addEventListener("mouseover", function() {
      elemento.textContent = "Mouse está sobre o elemento!";
    });

    elemento.addEventListener("mouseout", function() {
      elemento.textContent = "Passe o mouse aqui";
    });

    entrada.addEventListener("keydown", function(event) {
      if (event.key === "Enter") {
        alert("Você pressionou a tecla Enter!");
      }
    });
  </script>
</body>
</html>

Remoção de Eventos

Se necessário, também podemos remover eventos usando o método removeEventListener. Para isso, é importante que a função de callback seja nomeada, pois funções anônimas não podem ser removidas posteriormente.

Exemplo de remoção de evento:
<!DOCTYPE html>
<html>
<head>
  <title>Exemplo de Remoção de Evento</title>
</head>
<body>
  <button id="botao">Clique aqui</button>

  <script>
    const botao = document.getElementById("botao");

    // Definindo uma função de callback nomeada
    function onClickBotao() {
      alert("Você clicou no botão!");
    }

    botao.addEventListener("click", onClickBotao);

    // Removendo o evento após um determinado tempo
    setTimeout(function() {
      botao.removeEventListener("click", onClickBotao);
    }, 5000);
  </script>
</body>
</html>

A manipulação de eventos em JavaScript é uma ferramenta poderosa para criar interatividade em nossas páginas web. Através dos eventos, podemos fazer com que os elementos respondam às ações do usuário, tornando a experiência de navegação mais dinâmica e envolvente. Com o conhecimento desses conceitos, você estará apto a criar interações complexas e personalizadas em suas aplicações web usando JavaScript. Continue praticando e explorando os diferentes tipos de eventos para aprimorar suas habilidades em desenvolvimento web.

Woocommerce

Otimização de Desempenho para sua Loja WooCommerce: Estratégias Eficientes

Descubra como otimizar sua loja no WooCommerce para aumentar vendas e a satisfação do cliente. Estratégias e dicas eficazes!
Elementor

Elementor vs. Outros Construtores de Página: Qual a Melhor Escolha para o seu Site?

Construtores de Página: Descubra as vantagens do Elementor em comparação com outros construtores e encontre a ferramenta ideal para você.
Dúvidas?