2014-10-03 17 views
5

Dlaczego to działa, ale drugi przykład nie?W jquery mogę łańcuch .filter dwa razy?

Pierwsza działa.

function someFunk() { 
    $('.listOne li').filter(':odd').css('background-color', '#FFFFFF'); 
    $('.listOne li').filter(':even').css('background-color', '#F0F0F0'); 
}; 

Drugi nie działa.

function someFunk() { 
    $('.listOne li').filter(':odd').css('background-color', '#FFFFFF').filter(':even').css('background-color', '#F0F0F0'); 
}; 

Czy nie mogę łańcuchować .filter() w jquery?

+2

Można łańcuch jednak filtrowania nieparzystych tylko parzystych nie ma sensu. To tak, jakby powiedzieć: wyrzuć mi wszystkie jabłka z koszyka owoców, a następnie odfiltruj te jabłka tylko do jabłek, które są pomarańczami. –

+0

Więc robię to wszystko źle? – Xm7X

+0

Tęsknię za dodaniem końca() –

Odpowiedz

16

można użyć .end(), aby powrócić do poprzedniego stosu po metodach nawigacji DOM .:

$('.listOne li').filter(':odd').css('background-color', '#FFFFFF') 
.end().filter(':even').css('background-color', '#F0F0F0'); 
+0

To działa. Dzięki – Xm7X

Powiązane problemy