В jQuery filter()
сводит ваш результат к тем элементам, которые выполняют определенное условие.
Это разбиение списка на две части. Работа с "хорошей половиной" элементов проста:
$("some selector").filter(function() {
// determine result...
return result;
}).each( /* do something */ );
Но как я могу работать с "другой половиной" моих элементов, но не делая этого эквивалента:
$("some selector").filter(function() {
// determine result...
return !result;
}).each( /* do something else */ );
В принципе, я хотел бы передать две отдельные части /* do something */
в один фильтр. Один для тех, которые соответствуют, и один для остальных - без необходимости фильтровать дважды. У меня отсутствует функция jQuery, которая делает это?
P.S.: Думаю, я мог бы сделать:
$("some selector").each(function() {
// determine result...
if (result)
/* do something */
else
/* do something else */
});
Но я надеялся на что-то приятнее.