Firefox元素高度问题

问题描述:

我基于使用struts从服务器返回的行数动态创建表。该表是正确创建,我试图让使用任何以下的创建表的高度值:Firefox元素高度问题

document.getElementById('elementId').offsetHeight 
jQuery("#elementId").css('height') 
jQuery("#elementId").height() 

我已经使用Chrome运行我的代码,他们都返回表的适当的高度。我遇到的问题是Firefox。任何这些运行的Firefox总是返回值为0.

我已经尝试将代码放在$(document).ready()$(window).load()window.load = function(){}调用中,但它们都没有返回值。当我在Chrome中运行代码时,它会返回高度为136的值,并且当我在Firefox中运行相同的代码时,它每次都会返回值0。

有什么我失踪?任何帮助将不胜感激。

尝试将表格封装在div中并获取div的高度。

这可能是您如何动态设置表格大小的情况。

请尝试以下的:

alert(document.getElementById("myElement").clientHeight); 

alert(document.getElementById("myElement").style.height); 
+0

感谢您的帮助。使用document.getElementById(“myElement”)。style.height似乎适用于Firefox和Chrome,适用于div元素,但不适用于表格元素。我有我的表包裹在一个可滚动的div,我想有一个212像素的最大高度,如果它低于这个,我需要调整div的高度到表的相同高度,所以滚动条不是静止的div的高度相同。谢谢您的帮助。 – usherjer 2010-09-03 19:48:26

+0

对不起,忘记提及在使用document.getElementById(“myElement”)时,表高不会返回任何值。style.height – usherjer 2010-09-03 19:49:39

莫恩是对的东西 - 我不得不换一个DIV表格,以获取其高度。但如果你的下一个步骤是设置高度,这将不会在FF工作:

$("#ID").height(123) 

你需要这样做,而不是

$("#ID).css("height", 123) 

不知道为什么。