如何获得身体元素的高度
这里所有
的总高度是900像素,但jQuery函数将身体的高度返回为577像素。 (如果我删除了身体CSS,它正在工作)。
这个问题有解决方案吗?
$j(function() { alert($j("body").height()); }) html, body { height:100%; } header content footer
组
html { height: 100%; } body { min-height: 100%; }
而不是height: 100%
。
jQuery返回的结果是正确的,因为您已将主体的高度设置为100%,这可能是视口的高度。 这三个DIV导致溢出,因为在BODY元素中没有足够的空间。 要查看我的意思,请将边框设置为BODY标记并检查边框的结束位置。
简单地使用
$(document).height() // - $('body').offset().top
和/或
$(window).height()
而不是$('body').height();
$(document).height()似乎可以做到这一点并给出总高度,包括只能通过滚动看到的区域。
我相信返回的身高是可见的高度。 如果您需要总页面高度,可以将div标签包含在包含div中并获得其高度。
我们试图避免使用IE特定的
$window[0].document.body.clientHeight
并发现以下jQuery不会始终如一地产生相同的值,但最终会在我们的页面加载场景中的某些时刻起作用,这对我们有用并保持跨浏览器支持:
$(document).height()