使用jQuery查找可见元素的长度

时间:2011-09-07 13:22:40

标签: jquery toggle children

大家好我需要找到只有显示块的所有li元素的长度。如何使用jQuery实现这一点。我有一个类别菜单块,底部有更多的链接,单击时将显示所有类别。底部链接现在转到Less,单击时显示较少的项目。  这是代码。

var list = $('.menu-categories-list ul li:gt(3)');
        list.hide();
        $('#ClickMore').click(function() {
            list.slideToggle(400);
            if( $(this).parent().prev().children().length < 1 ) {
                $(this).html('Less...');
            }
            else {
                $(this).html('More...');
            }
            return false;
        });

你可以看一下link。左侧的类别块

2 个答案:

答案 0 :(得分:4)

我建议:

$('.menu-categories-list ul li:visible').size()

条件:

if ( $('.menu-categories-list ul li:visible').size() >= 4 ) {
    // do something
}

答案 1 :(得分:0)

对于任何来自Google的人...

.size()方法自jQuery 1.8起已使用deprecated,请改用.length

$('.menu-categories-list ul li:visible').length

将返回一个整数值,该整数描述li的子元素中可见的.menu-categories > ul元素的数量

写为答案,因为我没有足够的代表评论特内夫的答案