Durchlaufen der DOM mit jQuery .am nächsten()

Was ich dachte wäre ein leichtes für die .closest() zu behandeln, stellte sich heraus, nicht zu sein (oder vielleicht mache ich einen BLÖDEN Fehler).

Was ich versuche zu tun, ist der Zugang der <label> element aus der <div> mit dem text: I AM HERE:

<li>
    <label>I WANT TO ACCESS THIS ELEMENT</label>
    <div>...</div>
    <div>
        <input/>
        <input/>
        <input/>
        <div id="start">I AM HERE</div>
    </div>
</li>

Meine erste Vermutung wäre gewesen, zu versuchen, diese:

$('#start').closest('label') 

Aber nichts zurück.

  • Wenn .closest() scheint nicht richtig zu arbeiten, warum nicht Blick auf die .closest() doco? Oder die Liste der traversal-Methoden: api.jquery.com/category/traversing/tree-traversal zu finden, eine geeignete Methode...
  • nnnnnn - ich schaue in die Dokumentation, und das ist, wie ich kam mit meinem test. Die Dokumentation sagt ausdrücklich "Holen Sie sich das erste element entspricht dem Selektor, der Anfang bei dem aktuellen element und schreitet durch den DOM-Baum." Ich dachte, das Etikett ich versuche, Zugriff auf den DOM-Baum.
  • Gute Frage! Ich habe nicht verwendet closest() noch nicht, aber jetzt weiß ich, ich brauche zu tun. Großartiges Beispiel für seine Verwendung.
  • Sorry Allen, so viele Leute hier posten, anstatt die doco (oder Google) und ich denke, ich nahm an, Sie waren eine solche. Sorry nochmal. "Durch den DOM-Baum" bedeutet gerade nach oben, nicht seitwärts. I. e., Eltern, Großeltern, Urgroßeltern, etc., aber keine Tanten/Onkel, cousins, Geschwister.
  • Dank nnnnnn. Ich verstehe, was Sie versuchen zu sagen =) Einige von uns sind nur so gut wie das, was wir verstehen können, aus der docs.
InformationsquelleAutor Allen Liu | 2012-02-23
Schreibe einen Kommentar