16

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

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

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

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

4

2 回答 2

32

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

因此,最快的解决方法是改为在$(window).load(). 或者,更好的是,使用imagesLoaded 插件

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

于 2012-05-14T21:17:54.903 回答
4

也许你正在寻找这个: http ://api.jquery.com/outerHeight/

于 2012-05-14T20:29:33.367 回答