【jquery】插件之position与offset

jQuery 中有两个获取元素位置的方法offset()和position(),两者之间有什么不同和分别呢?

 

offset():

获取匹配元素在当前视口的相对偏移。

返回的对象包含两个整形属性:top 和 left。此方法只对可见元素有效。
.offset()方法可以让我们重新设置元素的位置。这个元素的位置是相对于document对象的。如果对象原先的position样式属性是 static的话,会被改成relative来实现重定位。

 

position():

获取匹配元素相对父元素的偏移。

返回的对象包含两个整形属性:top 和 left。为精确计算结果,请在补白、边框和填充属性上使用像素单位。此方法只对可见元素有效。

 

【jquery】插件之position与offset

 

总而言之,position获得的是与父元素之间的偏移,而offset获得的则是和当前视窗口之间的偏移。

 

补充一点:如果元素被旋转过,那么position也好,offset也好,获得的是元素旋转后左上角一点的位置

【jquery】插件之position与offset

【jquery】插件之position与offset

上一篇:为zend studio增加Extjs代码提示功能


下一篇:@RenderSection("Js", false) 和@RenderSection("Js", true)的区别