-
Você tem agora uma porção de ferramentas
na sua caixa para achar elementos.
-
E elas será ótimas muitas vezes
-
Mas tem uma ferramenta final
que é a mais poderosa de todas:
-
a habilidade de achar elementos
baseados no seletor CSS.
-
Você se lembra dos seletores CSS?
-
Os mais simples são encontrados
pelo nome da tag
-
ou id
-
ou a classe
-
Mas existem muito seletores
mais avançados:
-
seletores descendentes, seletores
atributos, combinando classe e elemento--
-
esta é uma boa hora para você
rever os seletores CSS
-
Se você se esqueceu de todos eles.
-
Por exemplo, se eu quiser estilizar
especificamente somente os elementos
-
com a classe "animal" que estão
dentro de um parágrafo?
-
Vamos colocar uma tag e
fazer isso.
-
Então eu primeiro escrevo 'p',
-
e então um espaço, para dizer que
estou procurando dentro dos ''s,
-
e então ponto animal para dizer que
estou olhando para qualquer elemento
-
com a classe "animal"
-
E eu vou apenas colorir de vermelho.
-
Lindo.
-
Agora, eu poderia usar o mesmo seletor CSS
para achar elementos no JavaScript,
-
usando o método
'documento.querySelectorAll().
-
Então eu irei alterar apenas esta
linha aqui
-
E eu preciso passar o seletor CSS
como argumento,
-
como uma string entre aspas.
-
E aqui, o parágrafo é
sobre gatos de novo.
-
Você poderia passar qualquer
seletor CSS válido para este função.
-
e ela retornará uma coleção de elementos.
-
que você pode percorrer.
-
Você se lembra na última vez
que dissemos
-
que 'getElementsByTagName()' retorna
uma coleção HTML
-
que parece muito com uma matriz?
-
Bem, este método retorna um 'NodeList'
que é bem parecido também,
-
nele podemos usar colchetes, podemos
checar seu tamanho, tudo isto.
-
E você provavelmente não irá ver
diferenças entre
-
um NodeList e um HTMLCollection
quando você usa estes métodos.
-
Mas você é convidado a pesquisar sobre
eles se quiser aprender mais.
-
Ok, agora, tem também um método
que irá olhar seletores CSS,
-
e retornará apenas um elemento,
se você souber seu seletor CSS
-
ele seleciona apenas uma coisa.
-
Na prática, não é muito útil,
-
porque nós temos o id que você
pode usar nestes casos.
-
Mas eu vou lhe mostrar ainda assim.
-
Então aqui, ao invés de 'getElementById',
Eu posso dizer:
-
'document.querySelector("'
-
e para encontrar o elemento pelo id
eu simplestemente adiciono um um sustenido
-
Ta-da
-
Então, como você vê, é parecido
com 'querySelectorAll()',
-
exceto que nós selecionamos um,
então é só 'querySelector()',
-
e nós passamos alguns seletores
que esperamos trazer um elemento.
-
Então quando você deve usar
cada uma destas ferramentas na sua caixa?
-
As primeiras que lhe mostrei
tendem a ter melhor performance.
-
Então eu sugiro usá-las onde puder.
-
Mas se você estiver numa situação
que necessite de um seletor mais complexo,
-
e você não puder usar eles,
então 'querySelectorAll()' é seu amigo.
-
Tente o próximo desafio,
-
então prepare-se para ver formas e mais
formas de manipular esta página web.
-
Legendado por Francis Pires