2013-07-31 3 views
5

हमेशा रिटर्न 0 क्रोम में निम्नलिखित चल रहा है:हो रही क्रोम में वर्तमान पुस्तक स्थिति पृष्ठ लोड पर scrollTop() का उपयोग/ताज़ा

$(window).on('load', function(){ 
    console.log($(window).scrollTop()); 
}); 

चल रहा है कि कंसोल के माध्यम से एक ही आदेश:

$(window).scrollTop() 

सही संख्या वापस करता है। (यानी: 843)

स्टैक ओवरफ्लो पर इस मुद्दे के बारे में बहुत सारे प्रश्न हैं लेकिन उनमें से किसी ने मुझे सही कामकाजी उत्तर या विकल्प नहीं दिया है। मुझे नुकसान हुआ है ...

+0

आप एक यूआरएल लोड हो रहा है के बारे में बात कर रहे हैं जो पृष्ठ पर एक नामांकित एंकर को इंगित करता है, f.ex: example.com/#section? – David

उत्तर

5

scrollTop() स्क्रॉल बार की वर्तमान लंबवत स्थिति देता है। आम तौर पर पेज लोड पर, स्क्रॉल बार 0 पर स्थित है। यदि कंसोल कुछ और प्रिंट करता है, तो आप या ब्राउज़र फ़ंक्शन कॉल करने से पहले स्क्रॉल हो जाना चाहिए था।

आप नामित एंकर का उपयोग कर या एक स्क्रॉल स्थिति से पृष्ठ को ताज़ा करने हैं, तो आप पुस्तक घटना है कि केवल एक बार चलाता है के लिए कोई हैंडलर बाध्य कर सकते हैं - पृष्ठ लोड पर:

$(window).on('scroll', function() { 
    console.log($(this).scrollTop()); 
}); 
+2

यही कारण है कि सवाल पृष्ठ लोड/रीफ्रेश करता है। चूंकि रीफ्रेश के साथ ब्राउज़र अपनी स्क्रॉल स्थिति को बरकरार रखता है और यह वही है जो मैं देख रहा हूं। – Chris

+0

कभी भी नहीं, आपका समाधान बहुत अच्छा काम करता है ... :) – Chris

+0

मैंने यह इंगित करने के लिए उत्तर को स्पष्ट किया कि समाधान में कुछ ब्राउज़रों को रीफ्रेश करने वाली ऑटो-स्क्रॉल सुविधा भी शामिल है। – David

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