Existe alguma outra forma de acessar esses elementos da árvore que não seja escrevendo vários "parents()"? Pq esse me parece uma maneira pouco prática pra uma árvore com muito mais elementos do que o do exercício.
Grato :)
Existe alguma outra forma de acessar esses elementos da árvore que não seja escrevendo vários "parents()"? Pq esse me parece uma maneira pouco prática pra uma árvore com muito mais elementos do que o do exercício.
Grato :)
Olá Kássio, tudo bem com você?
Podemos fazer de uma outra maneira, mas para isso, vamos imaginar o seguinte html
:
<section class="main">
<div>
<ul>
<li> <strong> Aqui </strong> </li>
</ul>
</div>
Para chegar na section
, poderiamos fazer da seguinte maneira:
-$("strong").parent().parent().parent().parent()
Mas uma alternativa seria utilizar o parents()
, o que ele nos devolve são todos os parentes com base naquele elemento, então por exemplo:
$("strong").parents()
Nos retornaria o seguinte:
0: <li>
1: <ul>
2: <div>
3: <section class="main">
4: <body>
5: html
E dessa maneira podemos utilizar um outro comando do jQuery que é o eq()
que nos auxilia a movimentar por índices, então no caso sabemos que a section
é o 3º pai do elemento, então poderíamos trocar aquela sequencia de parents
por apenas:
$("strong").parents().eq(3)
Também poderíamos utilizar o atributo closest
caso tenha um atributo bem específico, por exemplo:
$("strong").closest("section")
Faria nos movimentar também para a nossa section
:)
Conseguiu Compreender?
Qualquer coisa estou a disposição :)
Abraços e Bons Estudos!