Если вы используете nth-child
, он не учитывает подмножество, возвращаемое :visible
при определении его позиции nth
.
Сначала вам нужно выбрать видимые, а затем сделать .filter()
.
Пример: http://jsfiddle.net/YNV3J/
$('ul > li:visible').filter(function(i) {
return i % 3 === 2;
}).addClass('third');
РЕДАКТИРОВАТЬ: Оригинальный ответ использовал nth-child
, который не удастся в этой ситуации. Исправлено.