如何使用 . hide () 、.show () 或.toggle () 来切换元素的可见度 ?

如果元素可见或隐藏, 我如何测试 ?


当前回答

有两种方法可以检查元素的可见度。

解决办法1

if($('.selector').is(':visible')){
    // element is visible
}else{
    // element is hidden
}

解决办法2

if($('.selector:visible')){
    // element is visible
}else{
    // element is hidden
}

其他回答

我只是想澄清一下, 在杰奎里,

元素可以被视作隐藏, 原因有几个: 它们有一个 css 显示值为零 。 它们是类型=“ 隐藏” 的形状元素。 它们的宽度和高度被明确设置为 0。 祖先元素被隐藏, 因此该元素不会在页面上显示 。 有可见度的元素: 隐藏或不透明: 0 被视为可见, 因为它们仍然在布局中消耗空间 。 在隐藏元素的动画中, 该元素被视为可见, 直到动画结束 。 sourc

if($('.element').is(':hidden')) {
  // Do something
}

使用任何可见选择器或隐藏选择器检查粘度:

: 可见选择器 - jquery (“ : 可见”) 使用 : 隐藏选择器 - jquery (“ : 隐藏” )

使用.toggle () - 显示和隐藏元素

{{{{{{{{{{{{{{{}检查元素是否隐藏,并返回真实的虚假控制台.log($(“元素”)){{{{{{}}}检查元素是否可见,并返回真实的虚假控制台.log($(“元素”){{}}}{($(“元素”){}}}如果($(“元素”){}}}{{}}{{{}{{}}{{{{{}}可识别性{}}}}}($(“glegle}}}}}lock(funct}}}。

下面的代码检查,如果元素隐藏在jquery或可见

// You can also do this...

        $("button").click(function(){
            // show hide paragraph on button click
            $("p").toggle("slow", function(){
                // check paragraph once toggle effect is completed
                if($("p").is(":visible")){
                    alert("The paragraph  is visible.");
                } else{
                    alert("The paragraph  is hidden.");
                }
            });
        });

您可以在显示或隐藏 cs 类时,通过切换该类来使用该 Cs 类 :

.show{ display :block; }

设置您的 jquery toggle类 () 或添加类 () 或删除类 () 。

举个例子,

jquery (' myid'. 切换类 ('show')

当元素没有显示时, 上面的代码会添加显示 cs 类, 而当元素显示类别时, 将会删除 。

当你在检查它是否可见时, 你可以遵循这个拼字码,

jquery ('mid'.) 有类('show');

上面的代码将返回一个布尔, 当 Myid 元素含有我们的类( show) , 而当它没有( show) 类( show) 时则返回一个布尔 。

您可以使用 jquery's is () 函数来检查选定元素的可见或隐藏 。 此方法沿 dom 元素绕过查找匹配, 满足已传递参数 。 如果出现匹配返回错误, 它会返回真实 。

<script>
    ($("#myelement").is(":visible"))? alert("#myelement is visible") : alert("#myelement is hidden");
</script>