position()和之間有什么區(qū)別offset()?我嘗試在點擊事件中執(zhí)行以下操作:console.info($(this).position(), $(this).offset());它們似乎返回完全相同的...(點擊的元素在表格的表格單元格內(nèi))
3 回答

慕田峪4524236
TA貢獻1875條經(jīng)驗 獲得超5個贊
它們是否相同取決于背景。
position返回相對于偏移父項的{left: x, top: y}對象
offset返回相對于文檔的{left: x, top: y}對象。
顯然,如果文檔是偏移父代(通常是這種情況),則它們將是相同的。的偏移父是“最接近的定位含有元素”。
例如,使用此文檔:
<div style="position: absolute; top: 200; left: 200;">
<div id="sub"></div>
</div>
那$('#sub').offset() 將是{left: 200, top: 200},但.position()它將是{left: 0, top: 0}。

幕布斯6054654
TA貢獻1876條經(jīng)驗 獲得超7個贊
這兩個函數(shù)都返回一個具有兩個屬性的普通對象:width和height。
offset()指的是相對于文檔的位置。
position()指的是相對于其父元素的位置
但是當對象的css位置為“絕對”時,兩個函數(shù)都將返回width = 0和height = 0
- 3 回答
- 0 關(guān)注
- 502 瀏覽
添加回答
舉報
0/150
提交
取消