.length сообщает, сколько совпадений найдено в селекторе, поэтому это подсчет количества элементов <li> под <ul>, которые у вас есть..Если есть дочерние дети, используйте "ul > li" вместо этого, чтобы получить только прямых детей. Если на вашей странице есть другие элементы <ul>, просто измените селектор на соответствие только его, например, если у него есть идентификатор, который вы используете "#myListID > li".
В других ситуациях, когда вы не знаете тип дочернего элемента, вы можете использовать селектор * (wildcard) или .children(), например:
var count = $(".parentSelector > *").length;
или
var count = $(".parentSelector").children().length;
Ответ 2
Для этого вам не нужен jQuery. Вы можете использовать JavaScript .childNodes.length.
Просто убедитесь, что вычитаете 1, если вы не хотите включать текст по умолчанию node (который по умолчанию пуст). Таким образом, вы должны использовать следующее:
var count = elem.childNodes.length - 1;
Ответ 3
Попробуйте воспользоваться:
var count = $("ul > li").size();
alert(count);
Ответ 4
Что делать, если вы используете это, чтобы определить текущий селектор, чтобы найти его детей
поэтому это имеет место: <ol>, тогда есть <li>, как писать селектор
var count = $(this+"> li").length; не работает.