JA

José Araújo08/02/2024 08:33
Compartilhe

Simplificando a seleção de elementos no DOM usando JavaScript

  • #JavaScript

Existem muitas maneiras de selecionar um elemento através da manipulação do DOM (Document Object Model). Os mais comuns entre os programadores são os métodos querySelector, querySelectorAll, GetElementById e GetElementByTagName.

Exemplos de utilização:

// seleciona por ID
const element = document.GetElementById("#id-elemento"); 

// Seleciona por classe
const elements = document.querySelectorAll(".class-elementos"); 

// seleciona por ID
const element = document.querySelector("#id-elemento"); 

// Seleciona por tag
const elements = document.getElementsByTagName(".tag-elementos");

Tão importante quanto saber utilizar estes métodos, é buscar alternativas que simplifique nossos códigos.

const q = (seletor) => document.querySelector(seletor); 
const qa = (seletor) => document.querySelectorAll(seletor);

Este código JavaScript define duas funções de utilidade para selecionar elementos do DOM (Document Object Model):

  1. q:
  • Esta função recebe um seletor como argumento.
  • Utiliza o método document.querySelector() para selecionar o primeiro elemento no DOM que corresponde ao seletor especificado.
  • Retorna o elemento selecionado.
  1. qa:
  • Esta função também recebe um seletor como argumento.
  • Utiliza o método document.querySelectorAll() para selecionar todos os elementos no DOM que correspondem ao seletor especificado.
  • Retorna uma NodeList contendo todos os elementos selecionados.

Essas funções são formas abreviadas e convenientes de lidar com a seleção de elementos no DOM usando JavaScript, permitindo que você selecione elementos de forma rápida e concisa. Por exemplo:

// Seleciona o primeiro elemento com a classe "botao"
const botao = q('.botao');

// Seleciona todos os elementos com a classe "item"
const itens = qa('.item');
Compartilhe
Comentários (2)
Felipe Andrade
Felipe Andrade - 08/02/2024 09:11

Muito interessante, bem parecido com o jQuery Original, dando uma pesquisada encontrei uma base parecida com o original, já adianto que o código que vou mostrar foi gerado pelo ChatGPT, mas ainda assim é muito útil e funcional.


function $(selector) {
const elements = document.querySelectorAll(selector);


// Adiciona métodos adicionais ao objeto retornado
elements.addClass = function(className) {
  elements.forEach(element => {
    element.classList.add(className);
  });
  return elements;
};


elements.removeClass = function(className) {
  elements.forEach(element => {
    element.classList.remove(className);
  });
  return elements;
};


// Adicione mais métodos conforme necessário


return elements;
}


// Exemplos de uso
const myElement = $('#meuId');
const myElements = $('.minhaClasse');


// Utilizando os métodos adicionais
myElements.addClass('novaClasse');
myElements.removeClass('outraClasse');


WF

Willian Fernandes - 08/02/2024 08:49

Nice.