我需要测量隐藏元素内部的 div 的 offsetHeight。
<div id="parent" style="display: none;">
<div id="child">Lorem Ipsum dolor sit amet.</div>
</div>
父 div必须设置为“ display:none
”。我对此无能为力。我意识到子 div 的 offsetHeight 将是 0。我需要找到一个解决方法。
我玩过的东西是当页面加载时,我复制父节点的子节点,在设置为“ visiblity:hidden
”的页面上注入一个 div 。然后我测量这些元素的高度,并在完成后移除节点。
还有其他想法吗?
更新: 我最终不得不做的是:
使用 YUI 2,在页面加载时,我发现给定类名的所有元素要么设置为 display:none,要么高度和宽度为 0(这是测量元素是否存在的一种方法,或者父项设置为显示:没有任何)。然后我将该元素设置为 display:block。然后我检查了它的父级是否相同,并显示了它的父级,直到它找到一个可见的父级。一旦最高显示:无祖先设置为显示:块,我可以测量我的元素。
测量完所有元素后,我将所有元素重置回 display:none。