过滤掉具有CSS样式的JQuery元素:none

时间:2013-01-19 06:10:54

标签: javascript jquery

选择器让我产生了一组元素。在这组元素中,我有1或2个元素,CSS属性显示:none。我必须删除这些元素并获取已显示的元素。如何使用JQuery完成?

3 个答案:

答案 0 :(得分:9)

$("selector").is(":visible")

您还可以过滤掉原始选择器中的隐藏元素:

$("selector:visible")

答案 1 :(得分:7)

您可以使用.filter()

var displayed = $('mySelector').filter(function() {
    var element = $(this);

    if(element.css('display') == 'none') {
        element.remove();
        return false;
    }

    return true;
});

这会返回您的选择器中属性display none的所有元素,并删除那些元素。

答案 2 :(得分:2)

您可以使用filter()

var listWithoutDisplayNone = elementList.filter(function(){
      if($(this).css('display') != 'none')
           return $(this);
});