offset系列、scroll系列与client系列

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