offset系列、scroll系列与client系列
- offset系列:
- offsetLeft:获取元素距离最左边的距离,自身的margin包括在内,不包括自身的border
- offsetTop:获取元素距离最上边的距离,自身的margin包括在内,不包括自身的border
- offsetWidth:获取元素的宽度,包括border及之内,不包括margin
- offsetHeight:获取元素的高度,包括border及之内,不包括margin
- offsetParent:获取元素的定位父级元素:
- 若是元素fixed定位,获得null;
- 元素没有fixed状况下若是元素全部的父级元素都没定位,获得body;
- 元素没有fixed状况下,父级元素有定位,获得离他最近的有定位的父级元素
- scroll系列
- scrollTop和scrollLeft:得到的是内容卷曲出去的高度和宽度,当滚动条向下拉时,内容往上走,得到的就是上面跑出盒子范围的那部分高度。滚动条向右拉同理
- scrollWidth和scrollHeight:得到元素的实际宽度和高度,在内容没有超出盒子时,得到的是盒子的内部高度和宽度。内容超出盒子时得到的是内容实际应有的高度和宽度。当盒子内部存在滚动条时,得到的高度和宽度不包括滚动条。
根据浏览器兼容性,scroll系列须要写出兼容代码:例如scrollTop:
- var scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop
- client系列
- clientTop和clientLeft:得到上边框和左边框的宽度。
- clientWidth和clientHeight:获取可视范围的宽度高度,即边框内部的,不包括border,包括padding.当盒子内部存在滚动条时,得到的高度和宽度不包括滚动条。
欢迎关注本站公众号,获取更多信息