JQuery隐藏TR的高度返回0

JQuery隐藏TR的高度返回0,jquery,html,css,html-table,Jquery,Html,Css,Html Table,我试图计算设置为display的TR的高度:none,但是jqueryheight扩展方法每次都返回0。当然,当它可见时,它返回正确的值。根据我的理解和过去的经验,我不知道为什么会发生这种情况,因为即使它是隐藏的,它不应该返回高度吗?无论如何,任何帮助都将不胜感激 谢谢 否,显示为的元素:无不会占用文档空间,因此没有维度 然后,从元素的矩形空间计算的属性(例如offsetWidth或offsetHeight)将返回0 参考: 编辑:很难获取隐藏元素的尺寸。根据您的情况,Rotatin是正确的。在

我试图计算设置为display的TR的高度:none,但是jqueryheight扩展方法每次都返回0。当然,当它可见时,它返回正确的值。根据我的理解和过去的经验,我不知道为什么会发生这种情况,因为即使它是隐藏的,它不应该返回高度吗?无论如何,任何帮助都将不胜感激


谢谢

否,显示为
的元素:无
不会占用文档空间,因此没有维度

然后,从元素的矩形空间计算的属性(例如
offsetWidth
offsetHeight
)将返回
0

参考:


编辑:很难获取隐藏元素的尺寸。根据您的情况,Rotatin是正确的。在过去,当我确实需要知道元素的高度时,我所做的是使用jquery获取高度,将其存储在元素的数据对象中,然后在加载页面后隐藏元素

这对于一个包含大量元素的页面来说是很难看的(它似乎会延迟,因为在隐藏元素之前必须加载整个页面)

但是,如果您需要此技术,可以这样完成:

$('.should_be_hidden').each(function() {
    $(this).data('height',$(this).height()).hide();
});
如果需要为对象设置动画,它通常很有用

要获得高度,需要时。。。您只需执行以下操作:

var element_height = $('#some_element').data('height');

那么我怎么才能得到那个元素的高度呢?也许你想要可见性:隐藏来隐藏这个元素。我认为这保留了文件中的高度。