का उपयोग कर एक निश्चित मात्रा में पिक्सेल द्वारा ऊपर और नीचे स्क्रॉल करना मेरे पास ओवरफ़्लो वाले div में लिंक की एक सूची है। मैं क्या करना चाहता हूं कि उपयोगकर्ता ऊपर और नीचे बटन के साथ लिंक के इस मेनू में नेविगेट कर सकता है। मैं चाहता हूं कि जब भी उपयोगकर्ता संबंधित बटन पर क्लिक करता है तो div 1 लिंक तत्व की ऊंचाई से ऊपर या नीचे स्क्रॉल करना चाहता है। मैंने कुछ कोड आज़माए लेकिन मुझे लगता है कि यह दोनों दिशाओं में सही मात्रा को स्क्रॉल करने के तरीके को समझने में प्रतीत नहीं होता है। क्या कोई मेरी मदद कर सकता है?jQuery स्क्रॉलटॉप
सभी लिंक एक ही कक्षा में हैं।
संपादित करें:
मैं पहले से ही ऊपर और नीचे स्क्रॉल और में कामयाब रहे। अब मुझे सिर्फ 1 लिंक की ऊंचाई के छोटे चरणों में स्क्रॉल करने की आवश्यकता है।
$(function() {
var ele = $('#scroller');
var speed = 10, scroll = 5, scrolling;
$('.scroller-btn-up').click(function() {
// Scroll the element up
scrolling = window.setInterval(function() {
ele.scrollTop(ele.scrollTop() - scroll);
}, speed);
});
$('.scroller-btn-down').click(function() {
// Scroll the element down
scrolling = window.setInterval(function() {
ele.scrollTop(ele.scrollTop() + scroll);
}, speed);
});
$('.scroller-btn-up, .scroller-btn-down').bind({
click: function(e) {
// Prevent the default click action
e.preventDefault();
},
mouseleave: function() {
if (scrolling) {
window.clearInterval(scrolling);
scrolling = false;
}
}
});
});
आप इसे और अधिक विश्वसनीय बजाय लिंक की ऊंचाई की गणना यह कोडिंग कठिन करने के लिए मिल सकता है। अगर कोई पाठ केवल फ़ायरफ़ॉक्स में ज़ूम करता है उदाहरण के लिए पिक्सेल में फ़ॉन्ट आकार बढ़ेगा। कुछ इस तरह। var scroll = $ ('# scroller a')। ऊंचाई(); –
उपयोगी टिप्पणी के लिए उत्तर और धन्यवाद के लिए धन्यवाद! केवल एक चीज जो मुझे करने की ज़रूरत है वह स्क्रॉल टॉप को एनिमेट कर रहा है। मैं इस कोड में यह कैसे कर सकता हूं? –
बस 'ele.animate ({scrollTop: (ele.scrollTop() - स्क्रॉल) +' px '} का उपयोग करें); ' –