जवाबों:
चाहे वे समान हों, संदर्भ पर निर्भर करते हैं।
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}
।
sub
0: 0 पर पूर्ण स्थिति देना चाहते थे , तो यह ऑफसेट अभिभावक के ऊपरी बाएं कोने में होगा।
.position
1.12.0 => github.com/jquery/jquery/issues/1708
.Offset () विधि हमें एक तत्व की वर्तमान स्थिति को पुनः प्राप्त करने की अनुमति देता है दस्तावेज़ के सापेक्ष । इसके विपरीत .position () , जो ऑफसेट अभिभावक के सापेक्ष वर्तमान स्थिति को पुनः प्राप्त करता है । जब वैश्विक जोड़-तोड़ के लिए (विशेष रूप से, ड्रैग-एंड-ड्रॉप को लागू करने के लिए), .offset () के लिए किसी नए तत्व को शीर्ष पर रखा जाता है, तो यह अधिक उपयोगी होता है।
दोनों कार्य दो गुणों के साथ एक सादा वस्तु लौटाते हैं: चौड़ाई और ऊंचाई।
ऑफ़सेट () दस्तावेज़ के सापेक्ष स्थिति को संदर्भित करता है।
स्थिति () अपने मूल तत्व के सापेक्ष स्थिति को संदर्भित करता है
लेकिन जब वस्तु की सीएसएस स्थिति "निरपेक्ष" है, तो दोनों कार्य चौड़ाई = 0 और ऊंचाई = 0 लौटाएंगे