Мой ответ сфокусирован на расширенном случае, полученном из приведенного сверху.
Предположим, у вас есть группа элементов, от которой вы хотите скрыть дочерние элементы, кроме первого. Как пример:
<html>
<div class='some-group'>
<div class='child child-0'>visible#1</div>
<div class='child child-1'>xx</div>
<div class='child child-2'>yy</div>
</div>
<div class='some-group'>
<div class='child child-0'>visible#2</div>
<div class='child child-1'>aa</div>
<div class='child child-2'>bb</div>
</div>
</html>
Мы хотим скрыть все .child
элементы в каждой группе. Так что это не поможет, потому что будут скрыты все элементы .child
кроме visible#1
:
$('.child:not(:first)').hide();
Решение (в этом расширенном случае) будет:
$('.some-group').each(function(i,group){
$(group).find('.child:not(:first)').hide();
});