जावास्क्रिप्ट
JQuery पर निर्मित हमारे वैकल्पिक JavaScript प्लगइन्स के साथ बूटस्ट्रैप को जीवंत बनाएं। प्रत्येक प्लग इन, हमारे डेटा और प्रोग्रामेटिक एपीआई विकल्पों, और बहुत कुछ के बारे में जानें।
व्यक्तिगत या संकलित
प्लगइन्स को व्यक्तिगत रूप से शामिल किया जा सकता है (बूटस्ट्रैप के व्यक्तिगत का उपयोग करके js/dist/*.js
), या सभी को एक साथ उपयोग करके bootstrap.js
या छोटा किया जा bootstrap.min.js
सकता है (दोनों को शामिल न करें)।
यदि आप एक बंडलर (वेबपैक, रोलअप…) का उपयोग करते हैं, तो आप उन /js/dist/*.js
फ़ाइलों का उपयोग कर सकते हैं जो UMD तैयार हैं।
निर्भरता
कुछ प्लगइन्स और CSS घटक अन्य प्लगइन्स पर निर्भर करते हैं। यदि आप अलग-अलग प्लगइन्स शामिल करते हैं, तो डॉक्स में इन निर्भरताओं की जांच करना सुनिश्चित करें। यह भी ध्यान दें कि सभी प्लगइन्स jQuery पर निर्भर करते हैं (इसका मतलब है कि प्लगइन फाइलों से पहले jQuery को शामिल किया जाना चाहिए)। यह देखने के लिए हमसे परामर्श करेंpackage.json
कि jQuery के कौन से संस्करण समर्थित हैं।
हमारे ड्रॉपडाउन, पॉपओवर और टूलटिप्स भी Popper.js पर निर्भर करते हैं ।
डेटा विशेषताएँ
लगभग सभी बूटस्ट्रैप प्लगइन्स को डेटा विशेषताओं (जावास्क्रिप्ट कार्यक्षमता का उपयोग करने का हमारा पसंदीदा तरीका) के साथ अकेले HTML के माध्यम से सक्षम और कॉन्फ़िगर किया जा सकता है। एक तत्व पर डेटा विशेषताओं के केवल एक सेट का उपयोग करना सुनिश्चित करें (उदाहरण के लिए, आप एक ही बटन से टूलटिप और मोडल को ट्रिगर नहीं कर सकते हैं।)
हालाँकि, कुछ स्थितियों में इस कार्यक्षमता को अक्षम करना वांछनीय हो सकता है। डेटा विशेषता API को अक्षम करने के लिए, इस तरह से नामित दस्तावेज़ पर सभी ईवेंट को अनबाइंड data-api
करें:
वैकल्पिक रूप से, एक विशिष्ट प्लगइन को लक्षित करने के लिए, बस प्लगइन का नाम नामस्थान के रूप में डेटा-एपीआई नेमस्पेस के साथ शामिल करें:
चयनकर्ताओं
वर्तमान में DOM तत्वों को क्वेरी करने के लिए हम मूल विधियों का उपयोग करते हैं querySelector
और querySelectorAll
प्रदर्शन कारणों से, इसलिए आपको मान्य चयनकर्ताओं का उपयोग करना होगा । यदि आप विशेष चयनकर्ताओं का उपयोग करते हैं, उदाहरण के लिए: collapse:Example
उनसे बचना सुनिश्चित करें।
आयोजन
बूटस्ट्रैप अधिकांश प्लगइन्स की अनूठी क्रियाओं के लिए कस्टम ईवेंट प्रदान करता है। आम तौर पर, ये एक इनफिनिटिव और पिछले कृदंत रूप में आते हैं - जहां show
एक घटना की शुरुआत में इनफिनिटिव (उदा।) ट्रिगर होता है, और इसके पिछले कृदंत रूप (उदा। shown
) को एक क्रिया के पूरा होने पर ट्रिगर किया जाता है।
सभी अनंत घटनाएँ preventDefault()
कार्यक्षमता प्रदान करती हैं। यह किसी क्रिया के प्रारंभ होने से पहले उसके निष्पादन को रोकने की क्षमता प्रदान करता है। किसी ईवेंट हैंडलर से झूठी वापसी भी स्वचालित रूप से कॉल करेगी preventDefault()
।
प्रोग्रामेटिक एपीआई
हम यह भी मानते हैं कि आपको पूरी तरह से जावास्क्रिप्ट एपीआई के माध्यम से सभी बूटस्ट्रैप प्लगइन्स का उपयोग करने में सक्षम होना चाहिए। सभी सार्वजनिक एपीआई एकल, श्रृंखलाबद्ध तरीके हैं, और संग्रह पर कार्रवाई की गई है।
सभी विधियों को एक वैकल्पिक विकल्प ऑब्जेक्ट को स्वीकार करना चाहिए, एक स्ट्रिंग जो किसी विशेष विधि को लक्षित करती है, या कुछ भी नहीं (जो डिफ़ॉल्ट व्यवहार के साथ एक प्लगइन शुरू करती है):
प्रत्येक प्लगइन एक संपत्ति पर अपने कच्चे कंस्ट्रक्टर को भी उजागर करता Constructor
है: $.fn.popover.Constructor
. यदि आप एक विशेष प्लगइन इंस्टेंस प्राप्त करना चाहते हैं, तो इसे सीधे किसी तत्व से पुनर्प्राप्त करें: $('[rel="popover"]').data('popover')
.
अतुल्यकालिक कार्य और संक्रमण
सभी प्रोग्रामेटिक एपीआई विधियाँ एसिंक्रोनस हैं और संक्रमण शुरू होने के बाद लेकिन समाप्त होने से पहले कॉलर पर वापस आ जाती हैं ।
संक्रमण पूरा होने के बाद किसी क्रिया को निष्पादित करने के लिए, आप संबंधित घटना को सुन सकते हैं।
इसके अलावा एक संक्रमण घटक पर एक विधि कॉल को नजरअंदाज कर दिया जाएगा ।
डिफ़ॉल्ट सेटिंग्स
Constructor.Default
आप प्लगइन के ऑब्जेक्ट को संशोधित करके प्लगइन के लिए डिफ़ॉल्ट सेटिंग्स बदल सकते हैं :
कोई विवाद नहीं
कभी-कभी अन्य UI फ्रेमवर्क के साथ बूटस्ट्रैप प्लगइन्स का उपयोग करना आवश्यक होता है। इन परिस्थितियों में, नामस्थान टकराव कभी-कभी हो सकता है। यदि ऐसा होता है, तो आप .noConflict
उस प्लगइन पर कॉल कर सकते हैं जिसका आप मूल्य वापस करना चाहते हैं।
संस्करण संख्या
बूटस्ट्रैप के प्रत्येक jQuery प्लगइन के संस्करण को VERSION
प्लगइन के निर्माता की संपत्ति के माध्यम से एक्सेस किया जा सकता है। उदाहरण के लिए, टूलटिप प्लगइन के लिए:
जावास्क्रिप्ट अक्षम होने पर कोई विशेष फ़ॉलबैक नहीं
जावास्क्रिप्ट अक्षम होने पर बूटस्ट्रैप के प्लगइन्स विशेष रूप से सुंदर ढंग से वापस नहीं आते हैं। यदि आप इस मामले में उपयोगकर्ता अनुभव की परवाह करते हैं, तो अपने उपयोगकर्ताओं <noscript>
को स्थिति की व्याख्या करने के लिए उपयोग करें (और जावास्क्रिप्ट को फिर से कैसे सक्षम करें), और/या अपने स्वयं के कस्टम फ़ॉलबैक जोड़ें।
तृतीय-पक्ष पुस्तकालय
बूटस्ट्रैप आधिकारिक तौर पर प्रोटोटाइप या jQuery UI जैसी तृतीय-पक्ष JavaScript लाइब्रेरी का समर्थन नहीं करता है । घटनाओं के नाम के बावजूद .noConflict
, संगतता समस्याएं हो सकती हैं जिन्हें आपको स्वयं ठीक करने की आवश्यकता है।
यूटिलो
बूटस्ट्रैप की सभी जावास्क्रिप्ट फाइलें निर्भर करती हैं util.js
और इसे अन्य जावास्क्रिप्ट फाइलों के साथ शामिल किया जाना है। यदि आप संकलित (या छोटा) का उपयोग कर रहे हैं bootstrap.js
, तो इसे शामिल करने की कोई आवश्यकता नहीं है—यह पहले से मौजूद है।
util.js
उपयोगिता कार्यों और transitionEnd
घटनाओं के साथ-साथ एक सीएसएस संक्रमण एमुलेटर के लिए एक बुनियादी सहायक शामिल है। इसका उपयोग अन्य प्लगइन्स द्वारा CSS ट्रांज़िशन सपोर्ट की जाँच करने और हैंगिंग ट्रांज़िशन को पकड़ने के लिए किया जाता है।
प्रक्षालक
टूलटिप्स और पॉपओवर HTML को स्वीकार करने वाले विकल्पों को सैनिटाइज़ करने के लिए हमारे बिल्ट-इन सैनिटाइज़र का उपयोग करते हैं।
डिफ़ॉल्ट whiteList
मान निम्न है:
यदि आप इस डिफ़ॉल्ट में नए मान जोड़ना चाहते हैं तो whiteList
आप निम्न कार्य कर सकते हैं:
यदि आप हमारे सैनिटाइज़र को बायपास करना चाहते हैं क्योंकि आप एक समर्पित पुस्तकालय का उपयोग करना पसंद करते हैं, उदाहरण के लिए DOMPurify , तो आपको निम्न कार्य करना चाहिए: