Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何检查元素在Zepto中是否可见_Javascript_Zepto - Fatal编程技术网

Javascript 如何检查元素在Zepto中是否可见

Javascript 如何检查元素在Zepto中是否可见,javascript,zepto,Javascript,Zepto,不支持的.is(':visible')技术 那么如何检查元素是否可见呢 .css('display') === 'block' 或者,正如minitech建议的那样: .css('display') !== 'hidden' 如果您真的需要使用这些伪选择器,您可以随时使用。我从未使用过Zepto,但是: .css('display') !== 'none' 可能会有用 我对Zepto不太熟悉,但我认为您可以使用基本JavaScript进行某种形式的检测: function isVis(el

不支持的
.is(':visible')
技术

那么如何检查元素是否可见呢

.css('display') === 'block'
或者,正如minitech建议的那样:

.css('display') !== 'hidden'

如果您真的需要使用这些伪选择器,您可以随时使用。

我从未使用过Zepto,但是:

.css('display') !== 'none'

可能会有用

我对Zepto不太熟悉,但我认为您可以使用基本JavaScript进行某种形式的检测:

function isVis(ele) {
    if(ele.css('display')!='none' && ele.css('visibility')!='hidden' && ele.height()>0) {
        return(true);
    } else {
        return(false);
    }
}
然后在使用中:

var div=$('#div_id');
if(isVis(div)) {
    // Element is visible
} else {
    // Element in not visible
}

Zepto有一些官方扩展。您可以包括选择器模块以启用
.is(':hidden')


Zepto不支持
:隐藏
。不可见元素具有
display=none
not
display=hidden
请注意,
block
不是唯一可能的可见
显示类型。有
内联
内联块
表格
表格行
表格单元格
。。。你明白了。@minitech关于显示类型是正确的。作为黑客,我认为这可能是最好的解决方案。问题不在于元素是否隐藏。如果元素设置为
可见性:hidden
,该怎么办?@minitech Nice/谢谢-我想应该是它。我不确定Zepto是否有其他内置方式。如果您查看其
.toggle()
方法的源代码,Bonzo()基本上也会做类似的事情。它检查本机
el.style.display!='“无”
和“是否有宽度或高度”。@Jamie”元素的可见性为
隐藏的
不透明度为0的
视为可见,因为它们仍然在布局中消耗空间”,根据