对于窗口宽高来说,在IE8以上和其他浏览器可以使用window.innerWidth来获取,在IE里还要再细分,如果是标准模式,即document.compatMode为CSS1Compat的时候可以使用document.documentElement.clientWidth来获取,怪异模式可以使用document.body.clientWidth来获取。这都是窗口宽度。
滚动条滚动距离。在正常浏览器中可以使用
window.pageYOffset来获取。对于所有浏览器,在标准模式下使用document.documentElement.offsetLeft(高为offsetTop)来获取滚动条向右滚动宽度。怪异模式使用document.body.offsetLeft来获取。
 
对于元素窗口坐标有一个方法getBoudingClientRect()放回一个对象,有top,left,right,buttom 四个参数,分别对应着 块元素左上角到窗口左上角的做坐标, right,button对应右下角到窗口左上角的坐标,加上滚动条偏移量,就能得到元素的文档坐标。对于内联元素要注意,要使用getClientRects() 返回一个类数组对象,每一个对象都有四个元素,意义和块元素一样,为什么要这样,是因为内联元素会分行
比如  <span>aaa
 <span> <i>aa<i>  所以内联有自己的方法,返回第一行的坐标和第二行的坐标。
 
 
 posted on 2015-11-19 15:31  友方人员  阅读(267)  评论(0编辑  收藏  举报