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;
}
有不懂或者谬误的中央能够在下方评论区交换探讨
发表回复