ट्रिगर नहीं वर्तमान में मेरा कार्यक्रम एक जगह जहां यह दोनों सुनता उपयोगकर्ता एक निश्चित तत्व स्क्रॉल करने के लिए के लिए में है, लेकिन यह भी कभी-कभी अपने आप इस तत्व अपने आप में स्क्रॉल करता है। (धीरे-धीरे, सुंदर स्क्रॉल नहीं, लेकिन एक त्वरित कूद। यह संदर्भ में समझ में आता है, मैं कसम खाता हूं।)मेक "scrollLeft,"/"scrollTop" परिवर्तन पुस्तक घटना श्रोता
क्या स्क्रॉल ईवेंट स्क्रॉल करने या स्क्रॉलटॉप सेट करके स्क्रॉलिंग किए जाने पर स्क्रॉल ईवेंट ट्रिगर करने का कोई तरीका नहीं है? मेरी पहली सोचा की तरह एक बुनियादी स्विच था,:
ignoreScrollEvents = true;
element.scrollLeft = x;
ignoreScrollEvents = false;
function onScroll() {
if(ignoreScrollEvents) return false;
}
लेकिन जब से घटनाओं तुरंत चालू नहीं करते (उफ़, duhh), कि समस्या का समाधान नहीं है। मैं किस तरह के उत्तर का प्रयास कर सकता हूं? मैं jQuery का भी उपयोग कर रहा हूं, अगर इससे कुछ भी मदद मिलती है।
मेरे कोड में, मैं एक मुद्दा मारा: कभी कभी ऐसा होता है कि, कहते हैं, scrollLeft, पहले से ही 0 है, तो मेरे कोड भी 0. जैसे करने के लिए यह सेट, कोई पुस्तक घटना शुरू हो रहा है, और अगले उपयोगकर्ता स्क्रॉल नजरअंदाज कर दिया है। (जो वास्तव में एक मुद्दा है यदि वे होम, एंड इत्यादि के साथ स्क्रॉल करते हैं) लेकिन यह निश्चित रूप से एक करीबी समाधान है - और मुझे पता था कि मुझे उस डमी कार्यान्वयन में कुछ बेवकूफ याद आ रहा था। धन्यवाद! – Matchu
मैंने इस बारे में सोचा ... आपका सबसे अच्छा शर्त तो, आप ध्वज सेट करने से पहले मूल्य बदल रहे हैं, तो जाँच करने के लिए है - यह निर्धारित नहीं करते हैं यदि आप नहीं कर रहे हैं।हो सकता है कि आपके पास पहले से ही यह कोड एक अलग फ़ंक्शन में फैला हुआ हो, लेकिन यदि नहीं, तो ऐसा करने से यह आसान हो जाएगा - इसके उदाहरण के लिए रॉड्रिगो का जवाब देखें। – Shog9