2013-08-08 6 views
6

प्रश्न: .offset() और .position() के बीच क्या अंतर है?.position() और .offset() और एक दिलचस्प निरीक्षण के बीच अंतर?

मैंने उस पर कुछ दस्तावेज़ पढ़े लेकिन फिर भी मैं इन दोनों के बीच वास्तविक अंतर के बारे में बिल्कुल स्पष्ट नहीं हूं। मैं उसी पर एक सरल स्पष्टीकरण का अनुरोध करता हूं।

मेरे अवलोकन:

मैं एक जावास्क्रिप्ट कोड जो मैं वेब पेज (.aspx) अपने आप में रखा लिखा था। जावास्क्रिप्ट मूल रूप से एक मोडल पॉपअप की स्थिति निर्धारित कर रहा है। उस कोड में मैंने एक div की स्थिति प्राप्त करने के लिए .position() का उपयोग किया जहां मैं मोडल पॉपअप रखूंगा। अब, मोड़ है - जब मैंने जावास्क्रिप्ट कोड को एक अलग जेएस फ़ाइल में स्थानांतरित किया, तो .position() बिल्कुल ठीक से काम नहीं कर रहा था, इसके बजाय मैंने .offset() और यह ठीक काम कर रहा था।

मैं इस पर एक व्याख्या का अनुरोध करूंगा?

+0

संभावित डुप्लिकेट [jQuery: स्थिति() और ऑफसेट() के बीच अंतर] (http://stackoverflow.com/questions/3202008/jquery-difference-between-position-and-offset) – Medorator

उत्तर

7

यह इस बात पर निर्भर करता है कि तत्व किस संदर्भ में है। स्थिति ऑफसेट माता-पिता से संबंधित स्थिति लौटाती है, और ऑफ़सेट दस्तावेज़ के समान सापेक्ष करता है। जाहिर है, अगर दस्तावेज़ ऑफसेट माता-पिता है, जो प्रायः मामला होता है, तो यह समान होगा।

आप इस प्रकार का लेआउट, तथापि हों:

<div style="position: absolute; top: 200; left: 200;"> 
    <div id="sub"></div> 
</div> 

फिर उप के लिए ऑफसेट 200 हो जाएगा: 200, लेकिन इसकी स्थिति 0 हो जाएगा: 0।

आशा है कि यह समझ में आता है।

+0

"ऑफ़सेट क्या है जनक "? क्या यह स्थिति पूर्व शैली वाला पहला पूर्वज है जो स्थैतिक के अलावा किसी अन्य चीज़ पर सेट है? – Hubro

+1

हां, ऑफ़सेट माता-पिता स्थिर के अलावा निकटतम स्थान पर स्थित माता-पिता है। – vipulsharma

+0

.position() हमेशा मूल तत्व के निर्देशांक को संदर्भित करता है, जबकि .offset() इस तत्व को स्थित होने पर पूरे पृष्ठ से अभिभावक के ऑफसेट को ध्यान में रखते हुए ऐसे निर्देशांक की गणना कर सकता है। अगर मैं ग़लत हूं तो मेरी गलती सुझाएं ? –

संबंधित मुद्दे