У меня есть случайное количество DIVs (минимум 1, максимум 10)JQuery показать/скрыть дивы и счетчик
<div id="container">
<div class="foo">Content</div> <!-- div 1 -->
<div class="foo">Content</div> <!-- div 2 -->
<div class="foo">Content</div> <!-- div 3 -->
<div class="foo">Content</div> <!-- div 4 -->
<div class="foo">Content</div> <!-- div 5 -->
<div class="foo">Content</div> <!-- i need this one hidden -->
<div class="foo">Content</div> <!-- and this one -->
</div>
Хочу первые 5 дивы, чтобы быть видимыми (либо с .Show() или с классом, не имеет значения). Любые дополнительные DIV должны быть скрыты.
Затем я имитировать «закрывание» в DIV с:
$('.foo').click(function(){
$(this).fadeOut('slow');
});
который удаляет щелкнул DIV, в результате чего все дивы ниже, чтобы двигаться вверх один. Это мой желаемый эффект.
Однако мне нужна логика здесь.
Если у меня меньше 5 DIVS, закрытие объекта должно быть отключено. Если у меня больше 5 DIV, тогда, когда div «закрыт», я хочу, чтобы следующий «скрытый» div стал видимым.
Я могу добавить идентификаторы каждого DIV при необходимости с идентификаторами, как "Foo1" "foo2" и т.д.
Решение Nick Craver является хорошим. Я просто хочу отметить, что использование 'slideDown' и' slideUp', в которых вы используете 'fadeOut/In', делает приятный эффект с меньшей яростью. – lonesomeday
совет прислушался, намного красивее! – Ross