检查是否隐藏了所有子元素

ggz*_*one 27 jquery visibility

我的脚本有点困在这里:

它是一个复选框,用于过滤所有.notme图像并隐藏它的列表项.问题是现在我无法获得一个工作回调函数fadeToggle.它应该像这样:

如果所有孩子#list-team-single-container都"没有显示" - 做点什么.

$('#show-only-my-teams').change(function(){
    $('.notme').each(function(){
        $(this).parent().parent().fadeToggle('fast', function(){
        });
    });
}); 
Run Code Online (Sandbox Code Playgroud)

the*_*dox 68

if($('#list-team-single-container').children(':visible').length == 0) {
   // action when all are hidden
}
Run Code Online (Sandbox Code Playgroud)


Lix*_*Lix 10

:visiblejQuery选择可能是你在找什么?

描述

如果元素占用文档中的空间,则认为元素是可见的.可见元素的宽度或高度大于零.

具有可见性的元素:隐藏或不透明度:0被认为是可见的,因为它们仍然占用布局中的空间.在隐藏元素的动画期间,该元素在动画结束前被视为可见.在显示元素的动画期间,该元素在动画开始时被视为可见.

http://api.jquery.com/visible-selector/


$('#list-team-single-container').children(':visible');
Run Code Online (Sandbox Code Playgroud)

该行代码将返回#list-team-single-container可见的所有子元素.

$('#list-team-single-container').children(':visible').length;
Run Code Online (Sandbox Code Playgroud)

该行代码将返回子元素的数量#list-team-single-container是可见的.


rgi*_*gin 9

没有看到你的标记很难具体,但我想这样做:

var isVisible = 0;

$('.notme').each( function() {
    if( $(this).is(":visible") {
         isVisible++;
    }
});

if ( isVisible == 0 )
    // do something
Run Code Online (Sandbox Code Playgroud)