当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript getBoundingClientRect() 来获取页面元素的位置的代码[修正版]

Javascript
document.createElement()用法及注意事项
Javascript教程:关于内存泄漏问题
延迟事件为0的setTimeout的真正目的
JavaScript图片特效代码下载
AJAX初学:IE缓存页面的问题
AJAX中DOM的操作方法
AJAX中文乱码的两类问题
javascript程序的执行效率问题
网页用户注册界面的设计
ajax应该如何应用?
详解Javascript匿名函数的使用
Ajax:研究密码强度规则(仿google)
JavaScript学习教程
网页制作中常用的Javascript代码
深入学习Javascript函数
JS的Object类的属性和方法
Javascript初学者实例教程(1):简单交互
Javascript初学者实例教程(2):event对象和事件
Javascript初学者实例教程(3):数组和slice()方法
Javascript初学者实例教程(4):对象和构造方法

Javascript 中的 javascript getBoundingClientRect() 来获取页面元素的位置的代码[修正版]


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 290 ::
收藏到网摘: n/a

该方法已经不再是IE Only了,FF3.0+和Opera9.5+已经支持了该方法,可以说在获得页面元素位置上效率能有很大的提高,在以前版本的Opera和Firefox中必须通过循环来获得元素在页面中的绝对位置。 document.documentElement.getBoundingClientRect
下面这是MSDN的解释:
Syntax
oRect = object.getBoundingClientRect()Return Value
Returns a TextRectangle object. Each rectangle has four integer properties (top, left, right, and bottom) that represent a coordinate of the rectangle, in pixels.
Remarks
This method retrieves an object that exposes the left, top, right, and bottom coordinates of the union of rectangles relative to the client's upper-left corner. In Microsoft Internet Explorer 5, the window's upper-left is at 2,2 (pixels) with respect to the true client.
还是实际解释下,该方法获得页面中某个元素的左,上,右和下分别相对浏览器视窗的位置。也不好理解,下面用图说明下。
该方法已经不再是IE Only了,FF3.0+和Opera9.5+已经支持了该方法,可以说在获得页面元素位置上效率能有很大的提高,在以前版本的Opera和Firefox中必须通过循环来获得元素在页面中的绝对位置。

下面的代码举了个简单的例子,可以滚动滚动条之后点红色区域看各个值的变化。

点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]