Heim  >  Artikel  >  Web-Frontend  >  JQuery-Methode zum Durchlaufen von DOM-Knoten_jquery

JQuery-Methode zum Durchlaufen von DOM-Knoten_jquery

WBOY
WBOYOriginal
2016-05-16 15:55:401356Durchsuche

Das Beispiel in diesem Artikel beschreibt, wie JQuery DOM-Knoten durchquert. Teilen Sie es als Referenz mit allen. Die spezifische Analyse lautet wie folgt:

Der Kern dieses Abschnitts besteht darin, die DOM-Operationen von JQuery vorzustellen. Wir haben viele Knotenoperationen wie Erstellen, Löschen, Ersetzen usw. vorgestellt. Hier sind einige Methoden zum Durchqueren von Knoten, zum Auswählen benachbarter Knoten usw.

children()-Methode

Diese Methode wird verwendet, um die Menge der untergeordneten Elemente des passenden Elements zu erhalten. Anhand der Struktur des DOM-Baums können Sie die Beziehung zwischen den einzelnen Elementen und die Anzahl ihrer untergeordneten Knoten kennen.

Im Folgenden wird die Methode children() verwendet, um die Anzahl aller untergeordneten Elemente des übereinstimmenden Elements abzurufen.

var $body = $("body").children(); 
var $p = $("p").children(); 
var $ul = $("ul").children(); 
alert( $body.length ); // <body>元素下有2个子元素 
alert( $p.length );  // <p>元素下有0个子元素 
alert( $ul.length ); // <p>元素下有3个子元素 
for(var i=0;i< $ul.length;i++){ 
  alert( $ul[i].innerHTML ); 
}

PS: Die Methode children() berücksichtigt nur untergeordnete Elemente und keine untergeordneten Elemente.

next()-Methode

Diese Methode wird verwendet, um die Geschwisterelemente direkt hinter dem passenden Element zu erhalten. Aus der Struktur des DOM-Baums können wir erkennen, dass der nächste Geschwisterknoten des p-Elements ul ist, sodass das ul-Element über die next()-Methode abgerufen werden kann. Der Code lautet wie folgt:

var $p1 = $("p").next();
// 紧邻p元素后的同辈元素

prev()-Methode

Diese Methode wird verwendet, um die Geschwisterelemente unmittelbar vor dem passenden Element abzurufen. Aus der Struktur des DOM-Baums können wir erkennen, dass der vorherige Geschwisterknoten des ul-Elements p ist, sodass wir das p-Element über die prev()-Methode erhalten können. Der Code lautet wie folgt:

var $ul = $("ul").prev();
// 紧邻ul元素前的同辈元素

siblings()-Methode

Diese Methode wird verwendet, um alle Geschwisterelemente vor und nach dem passenden Element abzurufen. Nehmen Sie als Beispiel die Struktur des DOM-Baums. Das ul-Element und das p-Element sind Geschwisterelemente voneinander, und die drei li-Elemente unter dem ul-Element sind ebenfalls Geschwisterelemente voneinander.

Wenn Sie die Geschwisterelemente des p-Elements erhalten möchten, können Sie den folgenden Code verwenden:

var $p2 = $("p").siblings();
// 紧邻p元素的唯一同辈元素

closest()-Methode

Es wird verwendet, um das nächstgelegene passende Element zu ermitteln. Überprüfen Sie zunächst, ob das aktuelle Element übereinstimmt, und geben Sie in diesem Fall das Element selbst direkt zurück. Wenn es keine Übereinstimmung gibt, suchen Sie Schritt für Schritt nach dem übergeordneten Element, bis ein Element gefunden wird, das mit dem Selektor übereinstimmt. Wenn nichts gefunden wird, wird ein leeres JQuery-Objekt zurückgegeben.

Um beispielsweise dem nächstgelegenen li-Element des angeklickten Zielelements Farbe hinzuzufügen, können Sie den folgenden Code verwenden:

$(document).bind("click", function (e) { 
 $(e.target).closest("li").css("color","red"); 
})

Darüber hinaus gibt es in JQuery viele Methoden zum Durchlaufen von Knoten, wie find(), filter(), nextAll(), prevAIl(), parent() und parent() usw., die nicht beschrieben werden Hier können Leser das JQuery-Spickzetteldokument im Anhang einsehen. Es ist erwähnenswert, dass diese DOM-Traversal-Methoden eines gemeinsam haben: Sie können alle JQuery-Ausdrücke als Parameter zum Filtern von Elementen verwenden.

Ich hoffe, dass dieser Artikel für alle bei der jQuery-Programmierung hilfreich sein wird.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn