8

セレクターは一連の要素をもたらしました。一連の要素のうち、CSS 属性が display:none の要素が 1 つまたは 2 つありました。これらの要素を削除して、表示されている要素を取得する必要があります。JQueryを使用してこれを行うにはどうすればよいですか?

4

3 に答える 3

9

使用できます.filter()

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

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

    return true;
});

displayこれにより、属性がnot であるセレクターからすべての要素が返され、そうである要素がnone削除されます。

于 2013-01-19T06:14:55.720 に答える
9
$("selector").is(":visible")

元のセレクターで非表示の要素を除外することもできます。

$("selector:visible")
于 2013-01-19T06:16:30.570 に答える
4

filter()を使用できます

var listWithoutDisplayNone = elementList.filter(function(){
      if($(this).css('display') != 'none')
           return $(this);
});
于 2013-01-19T06:14:04.237 に答える