jquery中获取位置的两个函数offset() 和 position()

先看看这两个方法的定义。
offset():
获取匹配元素在当前视口的相对偏移。
返回的对象包含两个整形属性:top 和 left。此方法只对可见元素有效。
position():
获取匹配元素相对父元素的偏移。
返回的对象包含两个整形属性:top 和 left。为精确计算结果,请在补白、边框和填充属性上使用像素单位。此方法只对可见元素有效。

 

offset()方法不管该元素如何定位,也不管其父元素如何定位,都是获取的该元素相对于当前视口的偏移,也就是根据页面的根节点定位

position() 根据具有定位属性的父元素 获取偏移量.如果父元素没有定位属性,那么获取的偏移量和offset()获取的一样

作用:

通常获取一个元素(A)的位置是为了让另外的一个元素(B)正好出现在A元素的附近

1.要显示的元素B存放在DOM的最顶端或者最底端(即其父元素就是body).这个时候用offset()是最好的

2.若要显示的元素B存放在元素A的同一父元素下(即B为A的兄弟节点),这个时候使用position() 是最合适的。

posted on 2012-08-19 18:18  woshilee  阅读(342)  评论(0)    收藏  举报

导航