在有些情况下,需要设置某末端元素高度,让其占满剩余屏幕高度。
/**
* Des: 设置某元素高度,让其占满 屏幕剩下高度
* Input:元素id
* */
setAutoHeight(id){
let elemOri = document.getElementById(id);
let elemTmp = elemOri;
if(elemTmp == null){
return;
}
let offsetTop = 0;
//todo: 此处应该循环到最上层元素,将所有offsetTop求和。
while(elemTmp != null){
offsetTop += elemTmp.offsetTop;
elemTmp = elemTmp.offsetParent;
}
let paddingTop = getComputedStyle(elemOri,false)["paddingTop"];
let height = window.innerHeight - offsetTop - parseInt(paddingTop) + 'px';
elemOri.style.height = height;
}