offsetheight height clientHeight outerHeight等的区别

1.clientHeight和clientWidth用于描述元素内尺寸,是指 元素内容+内边距 大小,不包括边框(IE下实际包括)、外边距、滚动条部分

2. offsetHeight和offsetWidth用于描述元素外尺寸,是指 元素内容+内边距+边框,不包括外边距和滚动条部分只读

3. clientTop和clientLeft返回内边距的边缘和边框的外边缘之间的水平和垂直距离,也就是左,上边框宽度

4. offsetTop和offsetLeft表示该元素的左上角(边框外边缘)与已定位的父容器(offsetParent对象)左上角的距离 外边缘到元素

5.style.height只是返回元素本身的高度

6.innerHeight与clientHeight相同(属性是不一样是读写的),说的是ie中不支持此属性

7.scrollHeight返回元素的高度(元素的高度 + 内边距 +  溢出尺度,无溢出时与clientHeight一样)

8. offsetParent对象是指元素最近的定位(relative,absolute)祖先元素,递归上溯,如果没有祖先元素是定位的话,会返回null

9.outerheight(true/false) 当为true时返回整体的高度(元素的高度,内边距,边框和外边框) 

w3c上面说:其为只读属性且IE 不支持此属性,且没有提供替代的属性。但是在ie11上使用$(“#idName”).outerheight(true)得到了正确的值,$(“#idName”).outerheight(90)成功


js获取offsetheight的方法:document.getElementById("idName").offsetHeight;

jquery获取offsetHeight的方法:

offsetHeight是js对象所能支持的方法,而$("div:eq(1)")所获得的是一个JQUERY对象,他是不支持offsetHeight的。
 可以这样修改:1:$("div:eq(1)").get(0).offsetHeight;           //get()方法返回了DOM元素,可以支持offsetHeight属性,(注意:get()过后返回的是普通DOM元素,已经不支持JQUERY的方法了,但是可以用JS的方法)。
 

注意:

读写:style.height scrollHeight

只读:clientHeight offsetHeight

*Width 与*Height一样

你可能感兴趣的:(----js)