Javascript 检查元素是否可见,DOM中隐藏了哪个父元素
CSS:Javascript 检查元素是否可见,DOM中隐藏了哪个父元素,javascript,jquery,html,css,Javascript,Jquery,Html,Css,CSS: #test { visibility: hidden; width: 400px; height: 400px; background-color: orange; } #subTest { width: 100px; height: 100px; background-color: gray; } HTML: <div id="test"&g
#test {
visibility: hidden;
width: 400px;
height: 400px;
background-color: orange;
}
#subTest {
width: 100px;
height: 100px;
background-color: gray;
}
HTML:
<div id="test">
<div id="subTest"></div>
</div>
结果是:
getClientRects,length = 1
offsetParent = [object HTMLBodyElement]
JQuery isVisible = true
似乎所有的方法都是无效的
那么如何检查子测试是否可见呢?我认为这是不可能的。它们被称为级联样式表是有原因的。父元素和子元素之间存在语义关系 但是,作为一种解决方案,您可以克隆它并显示克隆。不知道你为什么要这么做。我认为您更可能需要更改标记,以便标记更有效地适合用例 但是自从我提到它。这是 代码: 希望这有帮助 蒂姆这个
$('#subTest').css('visibility') == 'hidden' // true
因为父项是隐藏的,它将级联到子项。如果父项是隐藏的,子项将不可见。。
var someElement = jQuery('#subDiv').clone();
someElement.appendTo('someOtherElement');
$('#subTest').css('visibility') == 'hidden' // true