client家族
检测浏览器窗口的大小
ie9及其以上的版本:window.innerWidth
标准模式:document.documentElement.clientWidth
怪异模式: document.body.clientWidth
兼容方法client(),获取浏览器窗口的大小
function client() {把内容滚动到指定的坐标。
{
return {
width: window.innerWidth,
height: window.innerHeight
}
}
else if(document.compatMode === “CSS1Compat”) // 标准浏览器,声明了DTD
{
return {
width: document.documentElement.clientWidth,
height: document.documentElement.clientHeight
}
}
return { // 怪异浏览器,没有声明DTD
width: document.body.clientWidth,
height: document.body.clientHeight
}
}
offset家族 获取元素尺寸的方法 offsetWidth/offsetHeight 得到对象的宽度和高度(自己的,与他人无关) offsetWidth = width + border + padding
offsetLeft/offsetTop 返回距离上级盒子(最近的带有定位)左边的位置 offsetTop style.top 的区别 最大区别在于offsetTop可以返回没有定位盒子的距离左侧的位置。 而style.top不可以,只有定位的盒子才有 left top right offsetTop返回的是数字,而style.top 返回的是字符串,例如 style.left = 300px; offsetTop只读,而style.top可读写。 如果没有给HTML元素指定过top样式,则 style.top返回的是空字符串。 最重要的区别style.left只能得到行内样式,offsetLeft 随便 offsetParent 返回改对象的父级 (带有定位) 不一定是亲的爸爸
scroll家族 window.onscroll=function(){}
scrollTop
被卷去的头部,它就是当你滑动滚轮浏览网页的时候网页隐藏在屏幕上方的距离
//谷歌浏览器和没有声明DTD
scrollTo(x,y) 把内容滚动到指定的坐标。 xpos必需,要在窗口文档显示区左上角显示的文档的 x 坐标。 ypos必需,要在窗口文档显示区左上角显示的文档的 y 坐标
clientHeight,scrollHeight,offsetHeight区别 clientHeight:client是可视区域的尺寸,就是不带滚动条的 scrollHeight:scroll是带上滚动条的高度 offsetHeight:元素自身的高度,其实和scrollHeight很相似, 但是有些属性是不能被计算的srollHeight,比如说border的尺寸。但是offsetHeight就包含了border的尺寸