jQuery height()返回false值

时间:2012-05-14 20:23:41

标签: jquery css height

我试图使用jQuery将几个div的高度设置为与最高div相同的高度。基本上我遍历div并从每个div中获取高度,将最大的一个存储在变量中。然后我再次遍历所有这些并将它们的高度设置为变量。

然而,jQuery给了我错误的高度值。例如,第一个div的height()函数返回633,但是当我在检查器中查看它时它表示它是603.我完全不知道它为什么要这样做。它似乎包括填充和边距,但文档说它不应该这样做。

我的样式表中div的高度设置为auto。如果我给它们一个固定的像素高度,那么jQuery height()函数会返回正确的值,但不会在它们处于auto状态时(因为它们需要)。

有问题的网站是ictsf.org。注意三列底部的额外空间。

2 个答案:

答案 0 :(得分:32)

问题与在$(document).ready()上运行的“均衡列高”代码有关,该代码在WebKit知道图像高度之前发生。

因此,最快的解决方法是在$(window).load()上运行代码。或者,更好的是,使用imagesLoaded plugin

或者,在height上设置img属性可能会解决问题。

答案 1 :(得分:4)

也许 您正在寻找:http://api.jquery.com/outerHeight/