/ / Come determinare il percorso di un ID in jQuery? - jquery

Come posso determinare il percorso di un ID in jQuery? - jquery

Il più grande problema che sto avendo con l'apprendimentojQuery è come ottengo il percorso di un particolare elemento, id o classe nel mio documento? Ho installato Firebug e le estensioni jQuery Firebug, ma non vedo un modo per determinare il percorso completo. Qualche consiglio per un n00b?

risposte:

1 per risposta № 1

Penso che non sia possibile con una funzione JQuery unica ... come ho trovato Questo.


1 per risposta № 2

Se hai scritto un codice HTML valido, tutto ciò di cui hai bisogno è l'ID stesso (la parte nell'attributo id del tuo elemento). Se il tuo id è "myID1", il selettore jQuery di cui hai bisogno è $("#myID1") supponendo che tu stia usando $ per jQuery.

Se stai parlando di attraversare l'albero DOM per ottenere elementi senza ID, guarda nel selettore di bambini, il selettore nth-child, la funzione .bambini(), il :genitore selettore, il .parents () funzione, e il .genitore() funzione. Tutti questi possono aiutare con DOM traversal.


1 per risposta № 3

Bene, se stai usando Firebug, puoi semplicemente guardarlo mentre ispeziona qualsiasi elemento.

alt text

Ma di solito è usato per altre cose, e l'utilizzo dell'intera cosa è sia inefficiente che sconsigliato se usato come selettore jQuery.


1 per risposta № 4

Vuoi dire che vuoi conoscere i genitori fino in fondo? Guarda a Questo e Questo.


1 per risposta № 5

Se hai solo bisogno del percorso del tuo elemnt, vuoi attaccare anche jQuery, lo troverai come una mollica di pane nel pannello Firebug dopo averlo ispezionato.


1 per risposta № 6

Dovresti impostare una funzione personalizzata per attraversare i genitori dell'elemento utilizzando le funzioni .parent () e .parents (). Ecco alcune informazioni:

http://api.jquery.com/parent/

e

http://api.jquery.com/parents/

È possibile eseguire un semplice script per verificare la presenza e inviarlo a un array o un altro tipo di variabile.

Pseudo codice:

function traverse_path(elementId) {
if($("#" + elementId).parent()) {
traverse_path($("#" + elementId).parent().attr("id"));
return $("#" + elementId).parent().attr("id") + " > ";
} else {
return null;
}
}