function myResizeFunction() {
...
}
$(function() {
$(window).resize(myResizeFunction).trigger('resize');
});
यह आपके आकार के हैंडलर को विंडो के आकार और दस्तावेज़ के तैयार होने पर ट्रिगर करने का कारण बनेगा। यदि आप .trigger('resize')इसके बजाय पेज लोड पर चलाना चाहते हैं, तो निश्चित रूप से, आप दस्तावेज़ तैयार हैंडलर के बाहर अपने आकार का हैंडलर संलग्न कर सकते हैं ।
अपडेट करें : यदि आप किसी अन्य तृतीय-पक्ष लाइब्रेरी का उपयोग नहीं करना चाहते हैं, तो यहां एक और विकल्प है।
यह तकनीक आपके लक्ष्य तत्व में एक विशिष्ट वर्ग जोड़ती है, इसलिए आपको केवल CSS के माध्यम से स्टाइल को नियंत्रित करने (और इनलाइन स्टाइल से बचने) का लाभ है।
यह यह भी सुनिश्चित करता है कि वास्तविक थ्रेशोल्ड बिंदु ट्रिगर होने पर वर्ग केवल जोड़ा या हटाया जाता है और प्रत्येक और हर आकार पर नहीं। यह केवल एक सीमा बिंदु पर फायर करेगा : जब ऊंचाई <= 818 से 819 या इसके विपरीत में बदलती है और प्रत्येक क्षेत्र में कई बार नहीं। यह चौड़ाई में किसी भी परिवर्तन से चिंतित नहीं है ।
function myResizeFunction() {
var $window = $(this),
height = Math.ceil($window.height()),
previousHeight = $window.data('previousHeight');
if (height !== previousHeight) {
if (height < 819)
previousHeight >= 819 && $('.footer').removeClass('hgte819');
else if (!previousHeight || previousHeight < 819)
$('.footer').addClass('hgte819');
$window.data('previousHeight', height);
}
}
$(function() {
$(window).on('resize.optionalNamespace', myResizeFunction).triggerHandler('resize.optionalNamespace');
});
एक उदाहरण के रूप में, आपके सीएसएस नियमों में से कुछ निम्नलिखित हो सकते हैं:
.footer {
bottom: auto;
left: auto;
position: static;
}
.footer.hgte819 {
bottom: 3px;
left: 0;
position: absolute;
}
$(window).resize(function(){...})