jQuery Navigazione - metodo offsetParent()
Esempio
Imposta il colore di sfondo dell'elemento antenato più vicino dell'elemento li con nome classe item-a:
$('li.item-a').offsetParent().css('background-color', 'red');
Definizione e uso
offsetParent() ottiene l'elemento antenato posizionato più vicino.
Sintassi
.offsetParent()
Spiegazione dettagliata
Se viene fornito un oggetto jQuery che rappresenta un insieme di elementi DOM, il metodo .offsetParent() ci permette di cercare gli antenati dell'elemento nel albero DOM e di costruire un oggetto jQuery avvolto dal più vicino elemento antenato posizionato. Gli elementi posizionati sono quelli per cui il属性 CSS position è impostato su relative, absolute o fixed. Questa informazione è molto utile quando si calcolano le offset per animazioni o si posizionano oggetti nella pagina.
Pensate a una pagina con una lista nidificata di base che contiene elementi posizionati:
<ul class="level-1"> <li class="item-i">I</li> <li class="item-ii" style="position: relative;">II <ul class="level-2"> <li class="item-a">A</li> <li class="item-b">B <ul class="level-3"> <li class="item-1">1</li> <li class="item-2">2</li> <li class="item-3">3</li> </ul> </li> <li class="item-c">C</li> </ul> </li> <li class="item-iii">III</li> </ul>
Se partiamo dall'elemento A, possiamo trovare il suo elemento antenato posizionato:
$('li.item-a').offsetParent().css('background-color', 'red');
Questo cambierà il colore di sfondo dell'elemento II selezionato.