2012-07-25 10 views
5

मैं उपयोग कर रहा हूँ jQuery समारोह ऑफसेट एक एंकर तत्व के ऊपर एक बिल्कुल तैनात DIV जगह की ताज़ा करने पर गलत ऑफसेट।jQuery पेज

$("#marker1").offset({ top: $("#<%= hypHowItWorks.ClientID %>").offset().top, left: $("#<%= hypHowItWorks.ClientID %>").offset().left }); 
$("#marker1").width($("#<%= hypHowItWorks.ClientID %>").outerWidth()); 

पृष्ठ लोड अप इस ठीक है, तथापि, अगर मैं F5 दबाकर पृष्ठ पुनः लोड, यह DIV प्रदर्शित करता है काम करता है जब थोड़ा से जहां यह shoud ऑफसेट। यदि मैं ब्राउज़र में बैक-फॉरवर्ड को सही जगह पर फिर से चला जाता हूं !!

यह नवीनतम Chrome और Firefox के साथ एक मुद्दा है, लेकिन IE9 के साथ नहीं।

कोई भी विचार?

क्रिस।

+0

क्या आपकी स्क्रिप्ट '$ (दस्तावेज़) .ready' कॉलबैक के अंदर है? – Engineer

+0

यह मुश्किल है [पुन: पेश] (http://jsfiddle.net/5gkSr/) जो त्रुटि है, लेकिन आप Firefox और प्रेस 'Ctrl + में पेज खोल सकते हैं Shift + मैं' घ, होवर करें और उस पर माउस से क्लिक करें _ # marker_ और आप देखेंगे, कौन सी शैली विशेषता बदल गई है और यह थोड़ा ऑफसेट क्यों हो गया। दस्तावेज़ के अंदर – Stano

+0

हाँ। – Chris

उत्तर

13

$(document).ready के बजाय $(window).load स्थिति में यह कोशिश करो।

मैं एक ही समस्या थी और है कि चाल के साथ इसे ठीक कर सकता है!

+0

आपके उत्तर के लिए बहुत बहुत धन्यवाद। यह मेरी समस्या हल हो गई! –

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