पर बग्गी कूदना मुझे jQuery के साथ एक चिपचिपा शीर्षलेख बनाने में एक विशिष्ट समस्या है। मैंने वेब के आस-पास आमतौर पर इस्तेमाल किए गए स्निपेट की कोशिश की, लेकिन मुझे हर जगह एक ही छोटी गाड़ी की बात समझ गई।चिपचिपा हैडर - स्क्रॉल
एक विशिष्ट दस्तावेज़ ऊंचाई (चिपचिपा प्रभाव के कॉलिंग से थोड़ा अधिक तक स्क्रॉल करने योग्य) पर चिपचिपा हेडर position: fixed
और position: static
के बीच कूदता है।
HTML:
<header>
<div id="not-sticky"></div>
<div id="sticky"></div>
</header>
<div id="content"> ...
jQuery:
var $sticky = $("#sticky");
var offset = $sticky.offset();
var stickyTop = offset.top;
var windowTop = $(window).scrollTop();
$(window).scroll(function() {
windowTop = $(window).scrollTop();
if (windowTop > stickyTop) {
$sticky.css({
position: 'fixed',
top: 0
});
}
else {
$sticky.css({
position: '',
top: ''
});
}
});
सीएसएस:
header {
width: 100%;
}
#not-sticky {
padding: 50px 0;
width: 100%;
}
#sticky {
padding: 24px 0;
position: relative;
width: 100%;
z-index: 25;
}
मैं भी #sticky
रूप में एक ही ऊंचाई के साथ #not-sticky
पर एक margin-bottom की कोशिश की एक निरंतर दस्तावेज़ ऊंचाई रखने के लिए, लेकिन एक ही उछल चिपचिपा प्रभाव उत्पन्न हुई।
उस चीज़ को ठीक करने का कोई विचार?
धन्यवाद आदमी, बहुत अच्छा काम करता है! मुझे उम्मीद थी कि क्लीन मार्कअप रखने के लिए लपेटने वाले div के बिना यह संभव होगा, लेकिन मैं इसे ले जाऊंगा। –
@ टिमोम आपका स्वागत है! मैंने एक पुन: प्रयोज्य फ़ंक्शन बनाया ताकि आप इसे 'डीओएम तैयार', 'विंडो लोड' पर भी इस्तेमाल कर सकें, जहां भी आपको आवश्यकता हो। आप जानते हैं, छवियां धीरे-धीरे लोड होती हैं और स्क्रॉल मान को दोबारा जांचने के लिए उपयोगी हो सकती हैं, क्योंकि पृष्ठ कभी-कभी विज़िट होने पर पहले ही स्क्रॉल किया जा सकता है। –
हाँ, इसके लिए धन्यवाद! मैंने पहले ही jQuery को 'डोम तैयार' में लपेट लिया है, लेकिन यह 'चिपचिपा()' -फंक्शन वास्तव में साफ है! –