日志标签:getBoundingClientRect

用getBoundingClientRect()来获取页面元素的位置

时间:2009年08月16日作者:愚人码头查看次数:7,806 views评论次数:1

以前绝大多数的使用下面的代码来获取页面元素的位置:

var _x = 0, _y = 0;
do{
_x += el.offsetLeft;
_y += el.offsetTop;
}while(el=el.offsetParent);
return {x:_x,y:_y};

这里有个”offsetParent”问题,所以要写很多兼容的代码,经过不懈的查找终于找到getBoundingClientRect();该方法获得页面中某个元素的左,上,右和下分别相对浏览器视窗的位置,他返回的是一个对象,即Object,该对象有是个属性:top,left,right,bottom;这里的top、left和css中的理解很相似,但是right,bottom和css中的理解有点不一样,看示意图:

2008100603035335 继续阅读:用getBoundingClientRect()来获取页面元素的位置»

Page 1 of 11