jQuery:隐藏元素 - 一般问题

时间:2009-11-27 00:40:03

标签: jquery hidden elements

当隐藏元素时,你无法阅读例如。他们的维度,这是一个普遍的JavaScript问题,还是jQuery中可能有一个解决方法?

我有例如。一些包含小部件的选项卡,初始化它们因为它们被隐藏而无法正常工作。

THX

4 个答案:

答案 0 :(得分:2)

我知道没有解决方法。

但是,您可以在CSS中使用visibility:hidden而不是display:none。使用visibility隐藏的元素:hidden保持其位置和大小,但只是不可见。

希望这有帮助。

答案 1 :(得分:0)

This dimension plugin说它可以获得隐藏元素的维度。

答案 2 :(得分:0)

如果设置可见性:隐藏元素仍会占用空间,因此设置position:absolute也可以将其移出文档流。如有必要,您可以将元素放在屏幕上,这样就不会无形地阻止事件等。

$("#el").css({
    visibility: "hidden",
    position: "absolute",
    left: "-9999px"
});

从那里你仍然可以读取元素的宽度。例如:

$("#el").width();

希望这有帮助!

答案 3 :(得分:0)

这个blog post突出了一种获取使用display:none隐藏的元素尺寸的方法。这里的其他答案涉及相同的想法,但两者都没有提供将CSS属性恢复为原始值的解决方案。