HTML:
<div class="outer">
<div id="inner1" class="inner" style="display: none"></div>
<div id="inner2" class="inner"></div>
<div id="inner3" class="inner"></div>
</div>
JavaScript (fiddle):
var $first_visible = $("div.inner:visible:first");
Это возвращает первый видимый внутренний div, который inner2
.
Однако, как только внешний div скрыт (скажем, я хочу, чтобы он постепенно исчез в следующем):
<div class="outer" style="display: none">
<div id="inner1" class="inner" style="display: none"></div>
<div id="inner2" class="inner"></div>
<div id="inner3" class="inner"></div>
</div>
все внутренние divs считаются скрытыми, и селектор больше не возвращает inner2
.
Как мне нужно изменить мой селектор jQuery, чтобы игнорировать видимость контейнера?