jQuery.find () ignoriert den Wurzelknoten

8

Mein jQuery-Objekt sieht so aus:

%Vor%

myJq.find(".a") gibt ein leeres jQuery-Objekt zurück, anscheinend weil find() nur die Kinder der in einem jQuery-Objekt enthaltenen Knoten durchsucht, nicht die Knoten selbst.

Wie kann ich einen der divs in myJq mit einem Selektor greifen?

    
morgancodes 03.09.2010, 15:34
quelle

3 Antworten

15

Sie müssen stattdessen .filter() verwenden.

Dadurch werden Elemente auf der obersten Ebene des jQuery-Objekts gefiltert.

%Vor%     
user113716 03.09.2010 15:35
quelle
6

Hier ist ein .find2 () , das sowohl Wurzelelemente als auch untergeordnete Elemente findet:

%Vor%

Damit können Sie Folgendes tun:

%Vor%

Hier ist mehr dazu: Ссылка

    
Daniel Nouri 16.03.2011 22:00
quelle
1

Sie können entweder .filter()

verwenden %Vor%

oder (besser, schneller) benutze .first()

%Vor%

Benchmark

%Vor%

.first() ist ungefähr 8x schneller für mich.

    
jAndy 03.09.2010 15:46
quelle

Tags und Links