Как я могу найти видимый дочерний элемент внутри родителя с jQuery?
Пробовал, например, следующие (и многие другие), которые не работают.
var childelement = $("#parent").find(".child:visible");
В родительском объекте много дочерних элементов, но только одно видно в одно и то же время. Все дочерние элементы определяются с тем же именем класса.
Изменение: в моем коде дочерние элементы определены как видимые или невидимые с атрибутом отображения. Аналогично ниже:
<span class="child" style="display: inline;">One</li>
<span class="child" style="display: none;">Two</li>
РЕШЕНИЕ Поработал с этим:
<div class="child" style="display: inline;">One</li>
<div class="child" style="display: none;">Two</li>
Вы можете сделать это так, Fiddle
$("#parentElement").children(':visible');
Возможно, что-то вроде:
Получить все дочерние элементы класса родительского элемента
var childElements = $("#parent .child");
Найдите нужный элемент:
var foundIt;
childElements.each(function(){
if(this.is(':visible')){
foundIt = this;
}
});
Рекомендации:
РЕДАКТИРОВАТЬ:
if(this.is(':inline')){
foundIt = this;
}