JS中获取对象的绝对位置

来源:互联网 发布:全景拼合软件 编辑:程序博客网 时间:2024/04/29 17:47

网页中,可以用[object].offsetLeft[object].offsetTop来获得该对象(object)与其所在容器中的水平及垂直偏移量。

问题是,在FFFireFox)中,它们是返回与BODY的偏移,而在IE中,是其所在容器中的水平及垂直偏移。

那么怎样在IE中也能获得与BODY的偏移呢?因为这个偏移才最有用,找到了这两个偏移,就相当于找到了在页面中的绝对位置。

可以变通一下:

var posX = objLookingFor.offsetLeft;

var posY = objLookingFor.offsetTop;

var aBox = objLookingFor;//需要获得位置的对象

do {

aBox = aBox.offsetParent;

posX += aBox.offsetLeft;

posY += aBox.offsetTop;

} while( aBox.tagName != "BODY" );

 

这样到最后,posXposY就是与BODY的偏移。

原创粉丝点击