2010-06-15 17 views
8

Chciałbym dowiedzieć się, czy istnieje element podrzędny, który ma zastosowany jeden z dwóch stylów klas. Mój kod wygląda następująco:find() lub dzieci() do wyszukiwania dzieci najwyższego poziomu tylko dla stylu?

var listOfMatchedResults = $("#parentList").find(".myStyle1, .myStyle2"); 

My style są zdefiniowane następująco:

.parent li, .myStyle0 { 
} 

.parent li.myStyle1 { 
} 

.parent li.myStyle2 { 
} 

nie muszę przechodzić więcej niż jeden poziom głębiej niż poziom dzieci, jak:

<ul id='parentList'> 
    <li><p>foo</p><p>grok</p></li> 
    <li class='myStyle2'><p>Here</p><p>I am!</p></li> 
    <li><p>foo</p><p>grok</p></li> 
</ul> 

Nie jestem pewien, co robi find(), czy wchodzi również w każdy z elementów akapitu? Po prostu potrzebuję tego, aby przemierzyć dzieci z najwyższego poziomu - czy jest jakiś sposób, aby to określić?

Dziękuję

+0

* "Chciałbym dowiedzieć się, czy istnieje element podrzędny" * Wygląda na to, że testujesz tylko istnienie jednego z dzieci. Czy to prawda, czy rzeczywiście chcesz zwrócić dziecko? Moja odpowiedź podaje sposoby przeprowadzenia testu na istnienie. – user113716

Odpowiedz

13

nie jestem jasne, co find() robi, to będzie w każdym z elementów akapitu też?

tak robi

po prostu trzeba go przemierzać dzieci najwyższego poziomu - czy jest jakiś sposób, aby określić, że?

tak, należy .children()

Z API DOC

The .find() i .children() są podobne, z tym że ten ostatni przemieszcza się tylko jeden poziom niżej drzewo DOM.

+0

Brzuszek, choć zwięzły. – MvanGeest

+1

@Mvan - Brzmienie i zwięzłość są synonimami. : o) – user113716

+1

Jeśli dobrze pamiętam, to cytat z "Popiołów Angeli" Franka McCourta. Mogę to sprawdzić, e-book powinien być gdzieś. * wyszukiwania * – MvanGeest

Powiązane problemy