(1)偏移量
包括元素在屏幕上占用的所有可见的空间。元素的可见大小由其高度、宽度,包括所有内边距、滚动条和边框大小。
offsetHeight : 元素在垂直方向上占用的 空间大小,以像素计。包括元素的高度,水平滚动条的高度,上边框高度和下边框的高度。
offsetWidth:元素在水平方向上占用的空间大小,以像素计。包括元素的宽度,垂直滚动条的宽度,左边框宽度和右边框宽度。
offsetLeft:元素的左外边框至包含元素的左内边框之间的像素距离。
offsetRight:元素的上外边框包含元素上内边框的像素距离。
//获取元素在页面的左偏移量
function getElementLeft(ele){
var acturalLeft = ele.offsetLeft;
var currEle = ele.offsetParent;
while(currEle != null){
acturalLeft += currEle.offsetLeft;
currEle = ele.offsetParent;
}
return acturalLeft;
}
//获取元素在页面中的上偏移量
function getElementTop(ele){
var actualTop = ele.offsetTop;
var currEle = ele.offsetParent;
while(currEle != null){
actualTop += currEle.offsetTop;
currEle = ele.offsetParent;
}
return actualTop;
}
(2)客户区大小
指的是元素内容及其内边距所占用的空间大小。
//获取浏览器视口大小
function getViewPort(){
if(document.compatMode == 'BackCompat'){
return{
width: document.body.clientWidth,
height: document.body.clientHeight
}
}else{
return {
width: document.documentElement.clientWidth,
height: document.documentElement.clientHeight
}
}
}
3、滚动大小:
参照JavaScript高级编程的中的滚动大小。