2010-11-02 11 views
9

मान लें कि हमारे पास बड़ी ऊंचाई वाला एक HTML पृष्ठ है। तो एक लंबवत स्क्रॉलबार होगा।उपयोगकर्ता द्वारा पृष्ठ को स्क्रॉल किए गए पिक्सल की संख्या कैसे प्राप्त करें?

जैसे उपयोगकर्ता नीचे स्क्रॉल करता है, मैं जानना चाहता हूं कि उसने जावास्क्रिप्ट (jquery) का उपयोग करके कितना स्क्रॉल किया है ... क्या यह संभव है?

उत्तर

16

आप .scroll() और .scrollTop() का उपयोग कर ऐसा कर सकते हैं।

$(window).scroll(function() { 
    // use the value from $(window).scrollTop(); 
}); 

भी इस question देखें।

+0

thanx बहुत !!!! – gadlol

3

हां। JQuery में scrollTop() देखें, जो scrollTop DOM संपत्ति को लपेटता है।

+0

thanx बहुत !!!! – gadlol

4

यही वह है जो मैंने अपनी वेबसाइट पर उपयोग किया ... जब कोई भी मेनू के नीचे 620 पिक्सेल स्क्रॉल करता है, तो मैं संख्याओं को मैन्युअल रूप से इनपुट करता हूं। मैं अभी भी एक noob हूँ जावास्क्रिप्ट पर लेकिन मुझे आशा है कि इस मदद करता है

<script> 
    $(document).ready(function(){ 
     $(window).scroll(function(){ 
      var scrollTop = 620; 
      if($(window).scrollTop() >= scrollTop){ 
       $('.Nav').css({ 
        position : 'fixed', 
        top : '0' 
       }); 
      } 
      if($(window).scrollTop() < scrollTop){ 
       $('.Nav').removeAttr('style'); 
      } 
     }) 
    }) 
    </script> 
+0

हालांकि यह काम करता है, इसे बेहतर किया जा सकता है, दूसरे कथन के लिए कोई ज़रूरत नहीं है, बस एक और का उपयोग करें। इसके अलावा 'शैली' विशेषता को हटाने से खतरनाक हो सकता है यदि कुछ और इनलाइन स्टाइल हो, शायद किसी अन्य जेएस फ़ंक्शन द्वारा। मुझे लगता है कि – jakecraige

14

शुद्ध जावास्क्रिप्ट में आप बस ऐसे ही कर सकते हैं:

window.onscroll = function (e) { 
    console.log(window.scrollY); // Value of scroll Y in px 
}; 

अधिक infos (मोज़िला डेवलपर नेटवर्क):

+1

में शुरुआती में जोड़े गए स्टाइल को रिवर्स करना बेहतर होगा, मुझे आश्चर्य है कि कोई भी इसे ऊपर नहीं उठाता है। मुझसे +1;) – Arjun

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

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