jQuery height() 返回错误值
Posted
技术标签:
【中文标题】jQuery height() 返回错误值【英文标题】:jQuery height() returning false values 【发布时间】:2012-05-22 08:37:46 【问题描述】:我正在尝试使用 jQuery 将几个 div 的高度设置为与最高 div 的高度相同。基本上,我遍历 div 并从每个 div 中获取高度,将最大的一个存储在变量中。然后我再次遍历所有这些并将它们的高度设置为变量。
然而,jQuery 给了我错误的高度值。例如,第一个 div 的 height() 函数返回 633,但是当我在检查器中查看它时,它说它是 603。我完全不知道它为什么这样做。它似乎包括填充和边距,但文档说它不应该这样做。
div 的高度在我的样式表中设置为自动。如果我给它们一个固定的像素高度,那么 jQuery height() 函数会返回正确的值,但不是在它们处于自动状态时(因为它们需要)。
有问题的网站是 ictsf.org。注意三列底部的额外空间。
【问题讨论】:
我刚刚确认这个问题在 Firefox 中没有发生。它发生在 Chrome 和 Safari 中。没用 IE 测试过,因为 IE 很烂。 不使用 IE 测试它的好理由。 【参考方案1】:也许你正在寻找这个:http://api.jquery.com/outerHeight/
【讨论】:
【参考方案2】:问题与您在 $(document).ready()
上运行的“均衡列高”代码有关,这发生在 WebKit 知道您的图像高度之前。
因此,最快的解决方法是在 $(window).load()
上运行代码。或者,更好的是,使用imagesLoaded plugin。
或者,在img
s 上设置height
属性可能会解决问题。
【讨论】:
您,先生,真是个天才!非常感谢。 已经挣扎了 1 小时,但你救了我更多...谢谢!以上是关于jQuery height() 返回错误值的主要内容,如果未能解决你的问题,请参考以下文章
使用下一个箭头时,jquery ui 的日期选择器中的月份返回错误值
jquery中innerheight outerHeight()与height()的区别