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;
}
有不懂或者错误的地方可以在下方评论区交流讨论
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。