द्वारा स्क्रॉल ईवेंट बनाया गया था, क्या यह बताना संभव है कि ब्राउज़र द्वारा या उपयोगकर्ता द्वारा स्क्रॉल ईवेंट किया गया था या नहीं? विशेष रूप से, बैक बटन का उपयोग करते समय एक ब्राउज़र अंतिम ज्ञात स्क्रॉल स्थिति पर जा सकता है। यदि मैं स्क्रॉल ईवेंट से बांधता हूं तो मैं कैसे बता सकता हूं कि यह उपयोगकर्ता या ब्राउज़र के कारण हुआ था?पता लगाएं कि उपयोगकर्ता द्वारा
$(document).scroll(function(){
//who did this?!
});
मुझे तीन प्रकार की स्थितियों को देखते हैं जो ब्राउज़र में स्क्रॉलिंग का कारण बनते हैं।
- उपयोगकर्ता कुछ कार्रवाई करता है। उदाहरण के लिए, मूसहेल, तीर कुंजी, पृष्ठ ऊपर/नीचे कुंजी, घर/अंत कुंजी का उपयोग करता है।
- ब्राउज़र स्वचालित रूप से स्क्रॉल करता है। उदाहरण के लिए, अपने ब्राउज़र में बैक बटन का उपयोग करते समय यह स्वचालित रूप से अंतिम ज्ञात स्क्रॉल स्थिति पर जायेगा।
- जावास्क्रिप्ट स्क्रॉल। उदाहरण के लिए,
element.scrollTo(x,y)
।
मुझे आपके प्रश्न से निश्चित नहीं है, अगर आप मुझे बैक कपास का उपयोग करके कूदते हैं तो ब्राउजर या उपयोगकर्ता की स्क्रॉल इवेंट। आम तौर पर: आप "ब्राउज़र द्वारा स्क्रॉलिंग" पर क्या विचार करते हैं? यदि आपका मतलब है कि आपकी स्क्रिप्ट द्वारा शुरू की गई स्क्रॉलिंग, तो आपको बस इतना करना है, जब आपकी स्क्रिप्ट स्क्रॉल होती है, या तो इवेंट हैंडलर को निष्क्रिय या फ़्लैग सेट करने के लिए ताकि ईवेंट हैंडलर इसे अनदेखा कर सके। – RoToRa
मैंने बैक बटन के माध्यम से स्क्रॉलिंग को "ब्राउज़र स्क्रॉल" माना। कुछ और - मूसहेल, ऊपर/नीचे तीर, केंद्र बटन क्लिक, आदि उपयोगकर्ता स्क्रॉल होगा। मुझे लगता है कि मेरा असली सवाल हो सकता है - क्या कोई घटना अलग-अलग होने का कोई तरीका है? मैंने ईवेंट ऑब्जेक्ट पर गुणों को देखा, लेकिन कुछ भी नहीं मिला। तीन परिदृश्य जिन्हें मैं कल्पना कर सकता हूं ब्राउज़र ब्राउज़र स्क्रॉलिंग शुरू किया गया है, जावास्क्रिप्ट ने स्क्रॉलिंग शुरू की है और उपयोगकर्ता ने स्क्रॉलिंग शुरू की है। उम्मीद है कि चीजों को स्पष्ट बनाता है। – mrtsherman
@mrtsherman मुझे एक ही आउटपुट प्राप्त करते समय इनमें से कुछ मिला: http://stackoverflow.com/questions/2834667/how-can-i-differentiate-a-manual-scroll-via-mousewheel-scrollbar-from- ए-जावस्क – AlphaMale