2011-09-22 12 views
6

मेरे वेबपेज पर मैं एक overflowed div (अर्थात खड़ी स्क्रॉलबार साथ) है। Div के अंदर, मेरे पास आईडी के साथ एंकर हैं। जब मैं यूआरएल (mypage.html # id) में इन आईडी में से एक डालता हूं, तो मैं उस एंकर पर स्क्रॉल करने के लिए, पृष्ठ नहीं, div चाहता हूं।मैं एक अतिप्रवाह div को एक प्रमाणपत्र हैशटैग (एंकर) में कैसे स्क्रॉल करूं?

मैं इसे कैसे कर सकता हूं, अधिमानतः सादे जावास्क्रिप्ट के साथ? यदि यह बहुत जटिल है, तो मैं jQuery के साथ जाऊंगा, लेकिन मैं इस परियोजना में किसी अन्य चीज़ के लिए इसका उपयोग नहीं कर रहा हूं।

+0

अब तक अपना कोड दिखाएं –

+0

तो इन सभी 3 उत्तरों में से काम, धन्यवाद। मैं अभी भी पार ब्राउज़र का परीक्षण करना है, लेकिन अब के लिए मैं पता चला है कि केवल .scrollTop() काम करता है .focus() – user323094

+0

तो कई ब्राउज़ में परीक्षण के साथ चला गया। – user323094

उत्तर

9
$('.overflow').scrollTop($('#anchor').offset().top); 

कोई कारण नहीं है कि आप इसे मानक जावास्क्रिप्ट में परिवर्तित नहीं कर सकते हैं।

ध्यान दें कि एंकर तत्व पर मार्जिन होने पर स्क्रॉल बंद हो जाएगा।

+0

मैं अपने HTML और सीएसएस थोड़ा पुनर्निर्माण करने के लिए था, लेकिन यह काम करता है (.स्थिति (के साथ), .offset नहीं())। मैंने jQuery स्रोत को देखा और इन तरीकों को फिसलने से थोड़ा मुश्किल हो सकता है। यदि मैं सफल हो जाऊंगा तो मैं शुद्ध जावास्क्रिप्ट को आजमाऊंगा और पोस्ट करूंगा। – user323094

+0

इस में चीरने के लिए jQuery में बहुत अधिक परस्पर निर्भरताएं हैं। क्या है, मैं इस समाधान के साथ जाऊंगा - मुझे अभी एहसास हुआ कि अगली फीचर के लिए मैं वैसे भी jQuery का उपयोग कर रहा हूं। जवाब के लिए धन्यवाद। – user323094

+0

वास्तव में, मैं फोकस() के साथ सरल समाधान के साथ जाऊंगा, बस इसका परीक्षण किया। – user323094

2

क्या आपने एंकर पर focus() सेट करने का प्रयास किया है?

किसी टैबिडेक्स वाला कोई भी डोम तत्व फोकस करने योग्य है, और किसी भी तत्व को फोकस करने वाला ब्राउज़र ब्राउज़र द्वारा दृश्य में स्क्रॉल किया जाएगा।

+0

उत्तर के लिए धन्यवाद। – user323094

+0

हाँ, इसके लिए धन्यवाद! – chris