计算最大嵌套列表项JQuery、Javascript、HTML

计算最大嵌套列表项JQuery、Javascript、HTML,javascript,jquery,html,loops,Javascript,Jquery,Html,Loops,我有一个无序列表和嵌套列表。 使用Jquery或Javascript,我需要在悬停在“top_level_list”ul上的所有嵌套列表中查找“second_level_item”列表项的最大计数。 例如,如果我将鼠标悬停在下面的“顶层列表”上,它应该输出数字3,因为第二个嵌套列表包含3项,这是任何给定嵌套列表的最大数量 <ul class="top_level_list"> <li class="top_level_item"> <ul c

我有一个无序列表和嵌套列表。 使用Jquery或Javascript,我需要在悬停在“top_level_list”ul上的所有嵌套列表中查找“second_level_item”列表项的最大计数。 例如,如果我将鼠标悬停在下面的“顶层列表”上,它应该输出数字3,因为第二个嵌套列表包含3项,这是任何给定嵌套列表的最大数量

<ul class="top_level_list">
    <li class="top_level_item">
        <ul class="second_level_list">
            <li class="second_level_item">This list has 1 item - A</li>
        </ul>
    </li>
    <li class="top_level_item">
        <ul class="second_level_list">
            <li class="second_level_item">This list has 3 items - A</li>
            <li class="second_level_item">This list has 3 items - B</li>
            <li class="second_level_item">This list has 3 items - C</li>
        </ul>
    </li>
</ul>
提前感谢。

您可以使用以下功能:

var result = Math.max.apply(null, ($('.second_level_list', this).map(function() {
    return $(this).children('li').length;
}));


这将检查所有二级列表,然后计算它们的二级项目子项,如果最大计数计数器高于以前,则更新该计数器

$(function countMax() {
    $('.top_level_list').hover(

    function () {
        maxCount = 0;
        $('.second_level_list', this).each(function (index, secondLevelList) {
            if ($(secondLevelList).children('.second_level_item').length > maxCount) {
                maxCount = $(secondLevelList).children('.second_level_item').length;
            }
        });
        alert(maxCount);
    },

    function () {
        //empty
    });
});
var counts = [];
$('.second_level_list', this).each(function() {
    counts.push($(this).children('li').length);
});
var result = Math.max.apply(null, counts);
$(function countMax() {
    $('.top_level_list').hover(

    function () {
        maxCount = 0;
        $('.second_level_list', this).each(function (index, secondLevelList) {
            if ($(secondLevelList).children('.second_level_item').length > maxCount) {
                maxCount = $(secondLevelList).children('.second_level_item').length;
            }
        });
        alert(maxCount);
    },

    function () {
        //empty
    });
});