如何获得元素的渲染高度?
假设您有一个<div>元素,其中包含一些内容。里面的内容将拉长<div>的高度。在没有显式设置高度的情况下,如何获得“渲染”的高度。显然,我试过了:
var h = document.getElementById('someDiv').style.height;这样做有什么诀窍吗?如果有帮助的话,我正在使用jQuery。
发布于 2009-02-08 20:52:23
它应该只是
$('#someDiv').height();和jQuery在一起。这将以数字的形式检索包装集中第一个项目的高度。
尝试使用
.style.height仅当您首先设置了该属性时才起作用。不是很有用!
发布于 2009-02-08 20:51:45
尝试以下选项之一:
var h = document.getElementById('someDiv').clientHeight;
var h = document.getElementById('someDiv').offsetHeight;
var h = document.getElementById('someDiv').scrollHeight;clientHeight包括高度和垂直填充。
offsetHeight包括高度、垂直填充和垂直边框。
scrollHeight包括所包含文档的高度(滚动时不只是高度)、垂直填充和垂直边框。
发布于 2015-01-27 01:35:15
非JQUERY,因为在这些答案的顶部有一堆使用elem.style.height的链接……
内部高度:
https://developer.mozilla.org/en-US/docs/Web/API/Element.clientHeight
document.getElementById(id_attribute_value).clientHeight;外部高度:
https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement.offsetHeight
document.getElementById(id_attribute_value).offsetHeight; 或者我最喜欢的参考资料之一:http://youmightnotneedjquery.com/
https://stackoverflow.com/questions/526347
复制相似问题