计算任何标记的第一级子元素

时间:2014-05-03 16:40:16

标签: jquery

$('.btns .next').click(function(){
if ($(this).hasClass("di")) {what = "div";}
else{what = "img";}
...
var xlen = $(c).find('>' + what).length;
});

这会对first-level-children中的div进行计数,但是它有效,但是可以说:

var xlen = $(c).find('> whatever_is_first_child_of_c' ).length;

因此,无论是第一个孩子是img还是div还是p还是其他什么 - 我都需要对它们进行统计。

3 个答案:

答案 0 :(得分:2)

首先获取第一个子项的标记类型,然后执行计数操作:

var tagType = $(c).find(">:first-child").prop("tagName").toLowerCase(); // prop("tagName") returns capitalized value
var xlen = $(c).find('> '+tagType).length;

答案 1 :(得分:2)

不会.children()做这个伎俩吗?

// number of direct descendants
var xlen = $(c).children().length;

您甚至可以将其限制为另一个选择器:

// sum of total direct div, img and p descendants
var xlen = $(c).children('div, img, p').length;

答案 2 :(得分:1)

试试这个:

$('.wrapper >') // where wrapper is container or parent element