संपादित करें: यह पुस्तकालय अब बोवर और एनपीएम के माध्यम से उपलब्ध है। विवरण के लिए गीथूब रेपो देखें।
अद्यतन उत्तर:
डिस्क्लेमर: मैं लेखक हूं।
यहां कुछ चीजें हैं जो आप नवीनतम संस्करण (उत्तरदायी बूटस्ट्रैप टूलकिट 2.5.0) का उपयोग कर सकते हैं:
// Wrap everything in an IIFE
(function($, viewport){
// Executes only in XS breakpoint
if( viewport.is('xs') ) {
// ...
}
// Executes in SM, MD and LG breakpoints
if( viewport.is('>=sm') ) {
// ...
}
// Executes in XS and SM breakpoints
if( viewport.is('<md') ) {
// ...
}
// Execute only after document has fully loaded
$(document).ready(function() {
if( viewport.is('xs') ) {
// ...
}
});
// Execute code each time window size changes
$(window).resize(
viewport.changed(function() {
if( viewport.is('xs') ) {
// ...
}
})
);
})(jQuery, ResponsiveBootstrapToolkit);
संस्करण 2.3.0 के अनुसार, आपको <div>
नीचे बताए गए चार तत्वों की आवश्यकता नहीं है ।
मूल ANSWER:
मुझे नहीं लगता कि आपको इसके लिए किसी विशाल स्क्रिप्ट या लाइब्रेरी की आवश्यकता है। यह काफी सरल कार्य है।
पहले वाले निम्नलिखित तत्व डालें </body>
:
<div class="device-xs visible-xs"></div>
<div class="device-sm visible-sm"></div>
<div class="device-md visible-md"></div>
<div class="device-lg visible-lg"></div>
ये 4 divs आपको वर्तमान में सक्रिय ब्रेकपॉइंट के लिए जाँच करने की अनुमति देते हैं। एक आसान जेएस डिटेक्शन के लिए, निम्न फ़ंक्शन का उपयोग करें:
function isBreakpoint( alias ) {
return $('.device-' + alias).is(':visible');
}
अब केवल आपके द्वारा उपयोग किए जा सकने वाले सबसे छोटे ब्रेकपॉइंट पर एक निश्चित कार्रवाई करने के लिए:
if( isBreakpoint('xs') ) {
$('.someClass').css('property', 'value');
}
DOM के तैयार होने के बाद परिवर्तनों का पता लगाना भी काफी सरल है। आप सभी की जरूरत है एक इस तरह से श्रोता की एक हल्की खिड़की है:
var waitForFinalEvent = function () {
var b = {};
return function (c, d, a) {
a || (a = "I am a banana!");
b[a] && clearTimeout(b[a]);
b[a] = setTimeout(c, d)
}
}();
var fullDateString = new Date();
एक बार जब आप इसके साथ सुसज्जित हो जाते हैं, तो आप परिवर्तनों को सुनना शुरू कर सकते हैं और ब्रेकपॉइंट-विशिष्ट कार्यों को निष्पादित कर सकते हैं:
$(window).resize(function () {
waitForFinalEvent(function(){
if( isBreakpoint('xs') ) {
$('.someClass').css('property', 'value');
}
}, 300, fullDateString.getTime())
});
<div class="d-none d-?-block"></div>
। उन CSS कक्षाएं बूटस्ट्रैप 4 के लिए हैं ... बूटस्ट्रैप में जो भी काम करता है उसका उपयोग करें 3. खिड़की के आकार की घटना को सुनने की तुलना में अधिक प्रदर्शन करने वाला।