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 er af samme type - det kan være alle 'div'er på siden, en samling links med 'a' eller en søgning blandt punktopstillinger med 'li'.
Det samme eksempel bruges i alle sidens beskrivelser, men beskrivelserne gælder uanset om de ensartede elementer er
siblings eller
nested elements.
Alle beskrivelser herunder tager udgangspunkt i det samme HTML-eksempel - der er indsat '.select' på grund af eksemplet med 'filter':
Vælger det af de matchende elementer som er placeret højest i DOM - uanset hvilke elementer der ligger i mellem.
Accepterer ikke en selector
$('li').first().css({'background' : 'green'});
.last ()
Vælger det af de matchende elementer som er placeret lavest i DOM - uanset hvilke elementer der ligger i mellem.
Accepterer ikke en selector
$('li').last().css({'background' : 'green'});
Ensartede elementer - even og odd
('selector : even')
Vælger de matchende elementer alle som kan tælles med et ulige nummer startende med det første match
$('li:even').css({'background' : 'green'});
('selector : odd')
Vælger de matchende elementer alle som kan tælles med et lige nummer startende med det første match
$('li:odd').css({'background' : 'green'});
Ensartede elementer - eq og nth
('selector') .eq (nummer)
Vælger det af de matchende elementer som svarer til det indsatte tal startende fra topppen af DOM
'eq' tæller fra '0' så det 1. element = 0 - det 2. element = 1 osv
$('li').eq(0).css({'background' : 'green'});
('selector : nth-of-type (nummer)')
Vælger de matchende elementer som svarer til det indsatte tal uanset hvilke elementer der ligger mellem når der tælles fra topppen af hver ancestor.
'nth-of-type' genstarter tællingen hver gang en ancestor afsluttes.
Vælger kun de matchende elementer som ligger placeret på pladsen svarende til det indsatte tal når der tælles fra topppen af hver ancestor. - er der ikke IKKE et match på tallets plads vælges altså intet.
'nth-child' genstarter tællingen hver gang en ancestor afsluttes.
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()