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.當盒子內部存在滾動條時,得到的高度和寬度不包括滾動條。
歡迎關注本站公眾號,獲取更多信息