Ved hjælp af JQuery har jeg forskellige muligheder for at søge og vælge elementerne i DOM. Her på siden findes beskrivelser af de forskellige muligheder der findes, når elementerne der søges efter relaterer sig til hinanden som ancestors og descendants.
Hvad er nested elements
Nested elements er underordnede elementer, som er indeholdt i et overordet element - det overordnede element fungerer som en container og wrapper elle de nestede elementer.
Nested elements kan være enten "descendants" eller "ancestors" afhængig af placering.
Descendants
Descendants betyder direkte oversat efterkommere, og kan være children, grand-children etc.
Descendants er elementer som i DOM har en lavere hierakisk status end elementet der tages udgangspunkt i - en descendant omkranses af det pågældende element, hvilket også kaldes et "nested" element.
I HTML-eksemplet herunder er div'en 'child' en descendant af 'parent':
Eksempel
<div id="parent">
<div id="child"></div> <!-- DETTE ER EN DESCENDANT -->
</div>
Ancestors
Ancestors betyder direkte oversat forfædre, og kan være parent, grand-parent etc.
Ancestors er elementer som i DOM har en højere hierakisk status end elementet der tages udgangspunkt i - en ancestor omkranser det pågældende element, hvilket også kaldes et "nested" element.
I HTML-eksemplet herunder har div'en 'parent' status som en ancestor for 'child':
Eksempel
<div id="parent"> <!-- DETTE ER EN ANCESTOR -->
<div id="child"></div>
</div>
Samme eksempel i alle sidens beskrivelser
Alle beskrivelser herunder tager udgangspunkt i det samme HTML-eksempel:
Vælger kun førstkommende selector over det pågældende element uanset hvor mange ancestors der ligge mellem - er der flere matchende selectorer højere op i DOM, bliver disse ikke valgt
Jeg kan inkludere det pågældende element (udgangspunktet) ved at bruge .andSelf() - i eksemplet vælges 'parent_2' med .parent() '#child' inkluderes med .andSelf()