JQuery - Как я считаю число элементов выбранным селектором?

Я использую $ () .fadeOut () для постепенного исчезновения объектов в списке (<литий> </литий>). Когда список пуст, я хочу скрыть родительский объект.

Я планирую выполнение этого путем регистрации в моем триггерном событии, которое исчезает список, если количество объектов 0, затем скрывают родительский элемент. Я могу использовать обратный вызов постепенного исчезновения для удаления элементов при необходимости.

К вопросу о точке: Как я выбираю теги лития в ул. и затем получаю общее количество того, что они использовали jQuery?

15
задан Joshua Enfield 21 April 2010 в 20:39
поделиться

3 ответа

Например, так:

$('ul > li').length

Более элегантным способом было бы написать

$('ul:empty').fadeOut();

Если ul не пуст, селектор ничего не подберет, и код ничего не сделает.

Возможно, вам придется написать

$('.SomeContainer:has(ul:empty)').fadeOut();
27
ответ дан 1 December 2019 в 00:45
поделиться

используйте .length

$('ul li').length // gives you back all li's in your ul
$('ul > li').length // give just the first children li's

, поэтому, чтобы скрыть своего родителя, вы можете использовать его следующим образом:

elements = $('ul > li')

if (elements.length) {
   elements.fadeOut()
}else{
   elements.parent().fadeOut()
}
11
ответ дан 1 December 2019 в 00:45
поделиться

Просто используйте .length для коллекции jQuery.

var $elements = $('ul#myUlElement').children('li');
alert($elements.length)
5
ответ дан 1 December 2019 в 00:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: