页面滚动条的相关属性概念

图例

flex示例

说明

本身的宽高,不包括border

  • clientWidth
  • clientHeight

本身的宽高,包括border

  • offsetWidth
  • offsetHeight

距离左侧和上部的距离,相对于窗口

  • offsetLeft
  • offsetTop

获取可以滚动的宽度(不包括border)如果内容宽高比本身小,该值为本身宽高,否则就是内容的宽高

  • scrollWidth
  • scrollHeight

滚动出去的距离

  • scrollLeft
  • scrollTop

相对于窗口左上角的点

  • clientX
  • clientY

相对于屏幕左上角的点(建议移动端使用)

  • screenX
  • screenY

相对于本身左上角的点(非标准属性)

  • offsetX
  • offsetY

相对于整个文档左上角的点(建议移动端使用)

  • pageX
  • pageY

获取窗口的宽高

  • document.body.clientWidth
  • document.body.clientHeight
  • document.body.offsetWidth (border)
  • docuemnt.body.offsetHeight (border)

获取正文的宽高(可以滚动的宽高)

  • document.body.scrollWidth
  • docuemnt.body.scrollHeight

获取正文滚出去的宽高

  • document.body.scrollTop
  • document.body.scrollLeft

获取屏幕分辨率宽高

  • window.screen.width
  • window.screen.height

获取左边框宽度和上边框宽度

  • clientLeft
  • clientTop