JAVASCRIPT
VUE
REACT
NODE
ES6
TYPESCRIPT

Js中获取页面任意元素距页面顶部和左侧的距离

2022. 04. 25    

js中获取页面任意元素距页面顶部和左侧的距离

function getElementTop(elem){ 
  let elemTop=elem.offsetTop;//获得elem元素距相对定位的父元素的top
  let elemLeft=elem.offsetLeft;//获得elem元素距相对定位的父元素的top
  elem = elem.offsetParent;//将elem换成起相对定位的父元素
  while(elem!=null){//只要还有相对定位的父元素 
    elemTop += elem.offsetTop;
    elemLeft += elem.offsetLeft;
    //再次将elem换成他相对定位的父元素上;
    elem = elem.offsetParent;
  }
  return {top:elemTop,left: elemLeft};
}