关于前端:获取任意DOM元素距离页面顶部HTML的距离自己写的迭代方法一看就懂百度搜的答案个人感觉全是是错的测试下来根本不符合

function toTopHeight(el) {
    var top_height = el.offsetTop;      //先保留以后元素的offsetTop值
      if(el&&el.nodeName!='HTML') {
          el = el.parentElement;
        while(el&&el.nodeName!="HTML"){//当以后元素不是顶部html标签时,持续迭代
            if(getComputedStyle(el).position!=='static'){
            //只有当元素有定位时,才将此元素的offsetTop值退出到后果中,因为offsetTop的值是间隔本身到离本身最近的有定位的父元素的内壁的间隔
                top_height+=el.offsetTop;
            }
            el = el.parentElement;
          }
      }
      return top_height;
}

有不懂或者谬误的中央能够在下方评论区交换探讨

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理