offsetHeight
包括元素的高度、上下内边距、上下边框值,如果元素的style.display的值为none,那么该值为0。
offsetWidth
包括元素的宽度、左右内边距、左右边框值,如果元素的style.display的值为none,那么该值为0。
offsetTop
元素的上外边框至包含该元素的上内边框之间的像素距离,当然包括元素的外边距,如果元素的style.display的值为none,那么该值为0。
offsetLeft
元素的左外边框至包含该元素的左内边框之间的像素距离,包括外边框,如果元素的style.display的值为none,那么该值为0。
offsetParent
该值为元素的包含元素。具体的值跟元素的定位有关,具体的值参考正美的博客。如果该元素的style.display的值为none,或者position的值为fixed,那么该值为null。这个还跟浏览器有关。概括起来就是距离该元素最近被定位的元素。
在 Webkit 中,如果元素为隐藏的(该元素或其祖先元素的 style.display 为 "none"),或者该元素的 style.position 被设为 "fixed",则该属性返回 null。
在 IE 9 中,如果该元素的 style.position 被设置为 "fixed",则该属性返回 null。(display:none 无影响。)
最后,所有这些偏移量都是只读的,而且每次访问他们都需要重新计算。为了避免重复计算,可以将计算的值保存起来,以提高性能。那么是不是jquery.offset().left等方法也是重复计算的呢?
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。