獲取第一個元素的當前坐標,或設置匹配元素集中每個元素相對於文檔的坐標。
用法一
.offset() => Object
.offset() => Object
說明:獲取匹配元素集中第一個元素相對於文檔的當前坐標。
-
添加的版本:1.2
.offset()
- 此方法不接受任何參數。
.offset()
方法允許我們檢索元素的當前位置(特別是它的邊框,不包括邊距)relative to the document
。將此與 .position()
進行對比,後者檢索當前位置 relative to the offset parent
。當將新元素放置在現有元素之上以進行全局操作(特別是實現drag-and-drop)時,.offset()
更有用。
.offset()
返回一個包含屬性 top
和 left
的對象。
注意:jQuery 不支持獲取隱藏元素的偏移坐標或考慮在<html>
文檔元素。
雖然可以通過設置visibility:hidden
獲取元素的坐標,但display:none
被排除在渲染樹之外,因此具有未定義的位置。
其他注意事項:
- dimensions-related API(包括
.offset()
)返回的數字在某些情況下可能是小數。代碼不應假定它是整數。此外,當用戶縮放頁麵時,尺寸可能不正確;瀏覽器不會公開 API 來檢測這種情況。
例子:
訪問第二段的偏移量:
|
演示:
點擊查看偏移量。
|
演示:
用法二
.offset( coordinates ) => jQuery
.offset( coordinates ) => jQuery
說明:設置匹配元素集中每個元素相對於文檔的當前坐標。
-
添加的版本:1.4
.offset( coordinates )
-
coordinates類型:PlainObject包含屬性
top
和left
的對象,它們是表示元素的新頂部和左側坐標的數字。
-
-
添加的版本:1.4
.offset( function )
-
function類型:Function(Integer 索引,PlainObject 坐標)=> PlainObject返回要設置的坐標的函數。接收集合中元素的索引作為第一個參數,接收當前坐標作為第二個參數。該函數應返回具有新的
top
和left
屬性的對象。
-
.offset()
setter 方法允許我們重新定位元素。指定元素的 border-box 位置 relative to the document
。如果元素的 position
樣式屬性當前為 static
,它將被設置為 relative
以允許重新定位。
例子:
設置第二段的偏移量:
|
演示:
相關用法
- JQuery .offsetParent()用法及代碼示例
- JQuery .off()用法及代碼示例
- JQuery .one()用法及代碼示例
- JQuery .on()用法及代碼示例
- JQuery .odd()用法及代碼示例
- JQuery .outerWidth()用法及代碼示例
- JQuery .outerHeight()用法及代碼示例
- JQuery .jquery用法及代碼示例
- JQuery .scroll()用法及代碼示例
- JQuery .add()用法及代碼示例
- JQuery .contextmenu()用法及代碼示例
- JQuery .undelegate()用法及代碼示例
- JQuery .load()用法及代碼示例
- JQuery .contents()用法及代碼示例
- JQuery .empty()用法及代碼示例
- JQuery UI .labels()用法及代碼示例
- JQuery UI .addClass()用法及代碼示例
- JQuery .click()用法及代碼示例
- JQuery UI .toggleClass()用法及代碼示例
- JQuery .removeAttr()用法及代碼示例
- JQuery .addClass()用法及代碼示例
- JQuery UI .cssClip()用法及代碼示例
- JQuery .next()用法及代碼示例
- JQuery UI .hide()用法及代碼示例
- JQuery .promise()用法及代碼示例
注:本文由純淨天空篩選整理自jquery.com大神的英文原創作品 .offset()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。