/ / next Element in einem jquery Objekt - jquery

nächstes Element in einem jquery-Objekt - jquery

Ich habe ein jQuery-Objekt erhalten $myObject und ein DOM-Element myElement Enthalten in $myObject.

Wie finde ich das nächste DOM-Element in? $myObject gleich nach myElement?

Antworten:

6 für die Antwort № 1

Reine JavaScript:

var nextElement = myElement.nextSibling;

Bearbeiten: Wenn ich einige Ihrer Kommentare lese, könnte es sein, dass ich das, was Sie suchen, missverstanden habe. Sie erwähnen, dass Ihre Elemente hinzugefügt werden $myObject verwenden .add(). Es scheint, als ob Sie versuchen, auf die Elemente in der Reihenfolge zuzugreifen, in der sie hinzugefügt wurden $myObject. Ist das richtig? Elemente werden in einem jQuery-Objekt in der Reihenfolge gespeichert, in der sie im DOM angezeigt werden. Die Reihenfolge, in der sie dem jQuery-Objekt hinzugefügt werden, wird nicht beibehalten. Sie können das nächste Element in der Menge der übereinstimmenden Elemente mit verwenden .index() die Position von finden myElement und dann den nächsten bekommen:

var idx = $myObject.index(myElement);
var nextElement = $myObject[idx + 1];

Aber das nächste Element wird gemäß der DOM-Reihenfolge sein, nicht die Reihenfolge, in der die Elemente hinzugefügt wurden. Um das zu erreichen, müssen Sie die Bestellung selbst speichern.

Sehen Sie diese Demo: http://jsfiddle.net/gilly3/Z96Gd/


3 für die Antwort № 2

Wickeln Sie das DOM-Element myElement in einem $, so dass JQuery-Methoden verwendet werden können. Dann benutze $(myElement).next().get(0). next() bewegt sich zum nächsten Element, während get(0) Gibt das erste DOM-Element des Selektors zurück.

Anstatt JQuery-Methoden zu verwenden, können Sie auch zu nativen DOM-Eigenschaften wie z myElement.nextSibling.


1 für die Antwort № 3

benutzen myElement.next()
http://api.jquery.com/next/