找到大多数孩子的元素

时间:2013-10-28 18:52:12

标签: jquery for-loop children

我有一个带有各种嵌套无序列表的导航栏。 我需要做的是计算每个UL的子项并设置一个包含最高计数的变量。

虽然我认为我可以使用for / while循环执行此操作,但我并不确定如何进行此操作。

脚本将:

  1. 计算每个ul的子项,将长度存储在数组中
  2. 选择最长的长度并将其存储在新变量中
  3. 感谢您的帮助!

2 个答案:

答案 0 :(得分:4)

var arr = []; //populate the length of children into this array.
$('ul').map(function (i) {
    arr[i] = $(this).children().length;
});
var maxValue = Math.max.apply(Math, arr); //get the max value from the array

答案 1 :(得分:0)

如果你的导航是'ul',你必须找到一个最大的孩子'li',那么:

var maximum = 0;
$('ul').each(function(){
   var height = $(this).height();
   if(height > maximum )
        maximum = maximum ;
});