पोपोवेर्स
आपकी साइट के किसी भी तत्व में बूटस्ट्रैप पॉपओवर जोड़ने के लिए दस्तावेज़ और उदाहरण, जैसे कि iOS में पाए जाने वाले पॉपओवर।
अवलोकन
पॉपओवर प्लगइन का उपयोग करते समय जानने योग्य बातें:
- पॉपओवर पोजिशनिंग के लिए थर्ड पार्टी लाइब्रेरी पॉपर पर भरोसा करते हैं। आपको पहले popper.min.js शामिल करना होगा
bootstrap.js
, या एक का उपयोग करना होगाbootstrap.bundle.min.js
जिसमें Popper हो। - पॉपओवर को निर्भरता के रूप में पॉपओवर प्लगइन की आवश्यकता होती है ।
- पॉपओवर प्रदर्शन कारणों से ऑप्ट-इन होते हैं, इसलिए आपको उन्हें स्वयं प्रारंभ करना होगा ।
- शून्य-लंबाई
title
औरcontent
मान कभी भी पॉपओवर नहीं दिखाएंगे। container: 'body'
अधिक जटिल घटकों (जैसे हमारे इनपुट समूह, बटन समूह, आदि) में समस्याओं को प्रस्तुत करने से बचने के लिए निर्दिष्ट करें ।- छिपे हुए तत्वों पर पॉपओवर ट्रिगर करने से काम नहीं चलेगा।
- के लिए पॉपओवर
.disabled
याdisabled
तत्वों को एक रैपर तत्व पर ट्रिगर किया जाना चाहिए। - जब कई पंक्तियों में लपेटने वाले एंकर से ट्रिगर किया जाता है, तो पॉपओवर एंकर की समग्र चौड़ाई के बीच केंद्रित होंगे। इस व्यवहार से बचने के लिए
.text-nowrap
अपने पर प्रयोग करें ।<a>
- पॉपओवर को उनके संबंधित तत्वों को DOM से निकालने से पहले छिपाया जाना चाहिए।
- एक छाया डोम के अंदर एक तत्व के लिए धन्यवाद पॉपओवर को ट्रिगर किया जा सकता है।
prefers-reduced-motion
मीडिया क्वेरी पर निर्भर है। हमारे एक्सेसिबिलिटी डॉक्यूमेंटेशन का रिड्यूस्ड मोशन सेक्शन देखें
।
कुछ उदाहरणों के साथ पॉपओवर कैसे काम करते हैं, यह देखने के लिए पढ़ते रहें।
उदाहरण
पॉपओवर सक्षम करें
जैसा कि ऊपर उल्लेख किया गया है, आपको पॉपओवर का उपयोग करने से पहले इनिशियलाइज़ करना होगा। किसी पेज पर सभी पॉपओवर को इनिशियलाइज़ करने का एक तरीका यह होगा कि आप उन्हें उनकी data-bs-toggle
विशेषता के अनुसार चुनें, जैसे:
const popoverTriggerList = document.querySelectorAll('[data-bs-toggle="popover"]')
const popoverList = [...popoverTriggerList].map(popoverTriggerEl => new bootstrap.Popover(popoverTriggerEl))
लाइव डेमो
हम निम्नलिखित लाइव पॉपओवर को प्रस्तुत करने के लिए ऊपर दिए गए स्निपेट के समान जावास्क्रिप्ट का उपयोग करते हैं। शीर्षक के माध्यम से सेट किए जाते हैं data-bs-title
और शरीर की सामग्री के माध्यम से सेट की जाती है data-bs-content
।
title
या
data-bs-title
अपने HTML में उपयोग करें। जब
उपयोग किया जाता है, तो पॉपर तत्व को प्रस्तुत किए जाने पर
title
इसे स्वचालित रूप से बदल देगा
।data-bs-title
<button type="button" class="btn btn-lg btn-danger" data-bs-toggle="popover" data-bs-title="Popover title" data-bs-content="And here's some amazing content. It's very engaging. Right?">Click to toggle popover</button>
चार दिशाएं
चार विकल्प उपलब्ध हैं: ऊपर, दाएँ, नीचे और बाएँ। आरटीएल में बूटस्ट्रैप का उपयोग करते समय दिशाओं को प्रतिबिंबित किया जाता है। data-bs-placement
दिशा बदलने के लिए सेट करें ।
<button type="button" class="btn btn-secondary" data-bs-container="body" data-bs-toggle="popover" data-bs-placement="top" data-bs-content="Top popover">
Popover on top
</button>
<button type="button" class="btn btn-secondary" data-bs-container="body" data-bs-toggle="popover" data-bs-placement="right" data-bs-content="Right popover">
Popover on right
</button>
<button type="button" class="btn btn-secondary" data-bs-container="body" data-bs-toggle="popover" data-bs-placement="bottom" data-bs-content="Bottom popover">
Popover on bottom
</button>
<button type="button" class="btn btn-secondary" data-bs-container="body" data-bs-toggle="popover" data-bs-placement="left" data-bs-content="Left popover">
Popover on left
</button>
रीतिcontainer
जब आपके पास मूल तत्व पर कुछ शैलियाँ हैं जो पॉपओवर में बाधा डालती हैं, तो आप एक कस्टम निर्दिष्ट करना चाहेंगे container
ताकि पॉपओवर का HTML उस तत्व के बजाय दिखाई दे। यह प्रतिक्रियाशील तालिकाओं, इनपुट समूहों और इसी तरह के अन्य क्षेत्रों में आम है।
const popover = new bootstrap.Popover('.example-popover', {
container: 'body'
})
एक अन्य स्थिति जहां आप एक स्पष्ट कस्टम सेट करना चाहते हैं, एक मोडल डायलॉगcontainer
के अंदर पॉपओवर हैं , यह सुनिश्चित करने के लिए कि पॉपओवर स्वयं मोडल से जुड़ा हुआ है। यह उन पॉपओवरों के लिए विशेष रूप से महत्वपूर्ण है जिनमें संवादात्मक तत्व होते हैं - मोडल डायलॉग फोकस को ट्रैप करेंगे, इसलिए जब तक पॉपओवर मोडल का चाइल्ड एलिमेंट नहीं होगा, तब तक उपयोगकर्ता इन इंटरेक्टिव तत्वों पर ध्यान केंद्रित या सक्रिय नहीं कर पाएंगे।
const popover = new bootstrap.Popover('.example-popover', {
container: '.modal-body'
})
कस्टम पॉपओवर
v5.2.0 . में जोड़ा गयाआप CSS वेरिएबल का उपयोग करके पॉपओवर की उपस्थिति को अनुकूलित कर सकते हैं । data-bs-custom-class="custom-popover"
हम अपनी कस्टम उपस्थिति के दायरे के साथ एक कस्टम क्लास सेट करते हैं और कुछ स्थानीय सीएसएस चर को ओवरराइड करने के लिए इसका इस्तेमाल करते हैं।
.custom-popover {
--bs-popover-max-width: 200px;
--bs-popover-border-color: var(--bs-primary);
--bs-popover-header-bg: var(--bs-primary);
--bs-popover-header-color: var(--bs-white);
--bs-popover-body-padding-x: 1rem;
--bs-popover-body-padding-y: .5rem;
}
<button type="button" class="btn btn-secondary"
data-bs-toggle="popover" data-bs-placement="right"
data-bs-custom-class="custom-popover"
data-bs-title="Custom popover"
data-bs-content="This popover is themed via CSS variables.">
Custom popover
</button>
अगले क्लिक पर खारिज करें
focus
उपयोगकर्ता के अगले क्लिक पर टॉगल एलिमेंट के अलावा किसी दूसरे एलीमेंट पर पॉपओवर को खारिज करने के लिए ट्रिगर का इस्तेमाल करें .
ख़ारिज-पर-अगले-क्लिक के लिए आवश्यक विशिष्ट मार्कअप
उचित क्रॉस-ब्राउज़र और क्रॉस-प्लेटफ़ॉर्म व्यवहार के लिए, आपको टैग का उपयोग करना चाहिए, <a>
टैग का नहीं ,<button>
और आपको एक tabindex
विशेषता भी शामिल करनी चाहिए।
<a tabindex="0" class="btn btn-lg btn-danger" role="button" data-bs-toggle="popover" data-bs-trigger="focus" data-bs-title="Dismissible popover" data-bs-content="And here's some amazing content. It's very engaging. Right?">Dismissible popover</a>
const popover = new bootstrap.Popover('.popover-dismiss', {
trigger: 'focus'
})
अक्षम तत्व
विशेषता वाले तत्व disabled
इंटरैक्टिव नहीं हैं, जिसका अर्थ है कि उपयोगकर्ता पॉपओवर (या टूलटिप) ट्रिगर करने के लिए उन्हें होवर या क्लिक नहीं कर सकते हैं। वर्कअराउंड के रूप में, आप एक रैपर से पॉपओवर को ट्रिगर करना चाहेंगे <div>
या <span>
आदर्श रूप से कीबोर्ड-फोकस करने योग्य का उपयोग कर सकते tabindex="0"
हैं।
अक्षम पॉपओवर ट्रिगर के लिए, आप यह भी पसंद कर सकते हैं data-bs-trigger="hover focus"
कि पॉपओवर आपके उपयोगकर्ताओं को तत्काल दृश्य प्रतिक्रिया के रूप में दिखाई दे क्योंकि वे अक्षम तत्व पर क्लिक करने की अपेक्षा नहीं कर सकते हैं।
<span class="d-inline-block" tabindex="0" data-bs-toggle="popover" data-bs-trigger="hover focus" data-bs-content="Disabled popover">
<button class="btn btn-primary" type="button" disabled>Disabled button</button>
</span>
सीएसएस
चर
v5.2.0 . में जोड़ा गयाबूटस्ट्रैप के विकसित हो रहे सीएसएस चर दृष्टिकोण के हिस्से के रूप में, पॉपओवर अब .popover
उन्नत रीयल-टाइम अनुकूलन के लिए स्थानीय सीएसएस चर का उपयोग करते हैं। CSS वेरिएबल्स के मान Sass के माध्यम से सेट किए जाते हैं, इसलिए Sass अनुकूलन अभी भी समर्थित है।
--#{$prefix}popover-zindex: #{$zindex-popover};
--#{$prefix}popover-max-width: #{$popover-max-width};
@include rfs($popover-font-size, --#{$prefix}popover-font-size);
--#{$prefix}popover-bg: #{$popover-bg};
--#{$prefix}popover-border-width: #{$popover-border-width};
--#{$prefix}popover-border-color: #{$popover-border-color};
--#{$prefix}popover-border-radius: #{$popover-border-radius};
--#{$prefix}popover-inner-border-radius: #{$popover-inner-border-radius};
--#{$prefix}popover-box-shadow: #{$popover-box-shadow};
--#{$prefix}popover-header-padding-x: #{$popover-header-padding-x};
--#{$prefix}popover-header-padding-y: #{$popover-header-padding-y};
@include rfs($popover-header-font-size, --#{$prefix}popover-header-font-size);
--#{$prefix}popover-header-color: #{$popover-header-color};
--#{$prefix}popover-header-bg: #{$popover-header-bg};
--#{$prefix}popover-body-padding-x: #{$popover-body-padding-x};
--#{$prefix}popover-body-padding-y: #{$popover-body-padding-y};
--#{$prefix}popover-body-color: #{$popover-body-color};
--#{$prefix}popover-arrow-width: #{$popover-arrow-width};
--#{$prefix}popover-arrow-height: #{$popover-arrow-height};
--#{$prefix}popover-arrow-border: var(--#{$prefix}popover-border-color);
सास चर
$popover-font-size: $font-size-sm;
$popover-bg: $white;
$popover-max-width: 276px;
$popover-border-width: $border-width;
$popover-border-color: var(--#{$prefix}border-color-translucent);
$popover-border-radius: $border-radius-lg;
$popover-inner-border-radius: subtract($popover-border-radius, $popover-border-width);
$popover-box-shadow: $box-shadow;
$popover-header-font-size: $font-size-base;
$popover-header-bg: shade-color($popover-bg, 6%);
$popover-header-color: $headings-color;
$popover-header-padding-y: .5rem;
$popover-header-padding-x: $spacer;
$popover-body-color: $body-color;
$popover-body-padding-y: $spacer;
$popover-body-padding-x: $spacer;
$popover-arrow-width: 1rem;
$popover-arrow-height: .5rem;
प्रयोग
जावास्क्रिप्ट के माध्यम से पॉपओवर सक्षम करें:
const exampleEl = document.getElementById('example')
const popover = new bootstrap.Popover(exampleEl, options)
पॉपओवर को कीबोर्ड और सहायक तकनीकी उपयोगकर्ताओं के लिए कारगर बनाना
कीबोर्ड उपयोगकर्ताओं को आपके पॉपओवर सक्रिय करने की अनुमति देने के लिए, आपको उन्हें केवल HTML तत्वों में जोड़ना चाहिए जो पारंपरिक रूप से कीबोर्ड-फ़ोकस करने योग्य और इंटरैक्टिव (जैसे लिंक या फॉर्म नियंत्रण) हैं। हालांकि मनमाने ढंग से HTML तत्वों (जैसे <span>
s) को विशेषता जोड़कर ध्यान देने योग्य बनाया जा सकता है tabindex="0"
, यह कीबोर्ड उपयोगकर्ताओं के लिए गैर-संवादात्मक तत्वों पर संभावित रूप से कष्टप्रद और भ्रमित करने वाले टैब स्टॉप को जोड़ देगा, और अधिकांश सहायक प्रौद्योगिकियां वर्तमान में इस स्थिति में पॉपओवर की सामग्री की घोषणा नहीं करती हैं। . इसके अतिरिक्त, केवल अपने पॉपओवर के लिए ट्रिगर के रूप में भरोसा न hover
करें, क्योंकि इससे उन्हें कीबोर्ड उपयोगकर्ताओं के लिए ट्रिगर करना असंभव हो जाएगा।
जब आप विकल्प के साथ पॉपओवर में समृद्ध, संरचित HTML सम्मिलित कर सकते हैं html
, तो हम दृढ़ता से अनुशंसा करते हैं कि आप अत्यधिक मात्रा में सामग्री जोड़ने से बचें। aria-describedby
पॉपओवर वर्तमान में जिस तरह से काम करते हैं, वह यह है कि, एक बार प्रदर्शित होने के बाद, उनकी सामग्री विशेषता के साथ ट्रिगर तत्व से जुड़ी होती है । परिणामस्वरूप, पॉपओवर की संपूर्ण सामग्री की घोषणा सहायक प्रौद्योगिकी उपयोगकर्ताओं के लिए एक लंबी, निर्बाध स्ट्रीम के रूप में की जाएगी।
इसके अतिरिक्त, जबकि आपके पॉपओवर में इंटरैक्टिव नियंत्रण (जैसे प्रपत्र तत्व या लिंक) भी शामिल करना संभव है (इन तत्वों को allowList
अनुमत विशेषताओं और टैग में जोड़कर), ध्यान रखें कि वर्तमान में पॉपओवर कीबोर्ड फ़ोकस ऑर्डर का प्रबंधन नहीं करता है। जब कोई कीबोर्ड उपयोगकर्ता पॉपओवर खोलता है, तो ट्रिगरिंग तत्व पर ध्यान केंद्रित रहता है, और चूंकि पॉपओवर आमतौर पर दस्तावेज़ की संरचना में ट्रिगर का तुरंत पालन नहीं करता है, इस बात की कोई गारंटी नहीं है कि आगे बढ़ना/दबानाTABकीबोर्ड उपयोगकर्ता को पॉपओवर में ही ले जाएगा। संक्षेप में, बस एक पॉपओवर में इंटरैक्टिव नियंत्रण जोड़ने से इन नियंत्रणों को कीबोर्ड उपयोगकर्ताओं और सहायक तकनीकों के उपयोगकर्ताओं के लिए पहुंच से बाहर/अनुपयोगी बना दिया जा सकता है, या कम से कम एक अतार्किक समग्र फोकस ऑर्डर के लिए बना सकता है। इन मामलों में, इसके बजाय एक मोडल संवाद का उपयोग करने पर विचार करें।
विकल्प
चूंकि विकल्प डेटा विशेषताओं या जावास्क्रिप्ट के माध्यम से पारित किए जा सकते हैं, आप विकल्प नाम को में जोड़ सकते हैं data-bs-
, जैसा कि में है data-bs-animation="{value}"
। डेटा विशेषताओं के माध्यम से विकल्पों को पास करते समय केस प्रकार के विकल्प नाम को " CamelCase " से " कबाब-केस " में बदलना सुनिश्चित करें । उदाहरण के लिए, data-bs-custom-class="beautifier"
के बजाय उपयोग करें data-bs-customClass="beautifier"
।
बूटस्ट्रैप 5.2.0 के अनुसार, सभी घटक एक प्रयोगात्मक आरक्षित डेटा विशेषता data-bs-config
का समर्थन करते हैं जो JSON स्ट्रिंग के रूप में सरल घटक कॉन्फ़िगरेशन को रख सकता है। जब किसी तत्व में data-bs-config='{"delay":0, "title":123}'
और data-bs-title="456"
विशेषताएँ होती हैं, तो अंतिम title
मान होगा 456
और अलग डेटा विशेषताएँ पर दिए गए मानों को ओवरराइड कर देंगी data-bs-config
। इसके अलावा, मौजूदा डेटा विशेषताएँ JSON मान जैसे data-bs-delay='{"show":0,"hide":150}'
.
sanitize
,
sanitizeFn
, और
विकल्पों की आपूर्ति नहीं की जा सकती है।allowList
नाम | टाइप | चूक | विवरण |
---|---|---|---|
allowList |
वस्तु | डिफ़ॉल्ट मान | ऑब्जेक्ट जिसमें अनुमत विशेषताएँ और टैग शामिल हैं। |
animation |
बूलियन | true |
पॉपओवर में CSS फ़ेड ट्रांज़िशन लागू करें। |
boundary |
स्ट्रिंग, तत्व | 'clippingParents' |
पॉपओवर की ओवरफ्लो बाधा सीमा (केवल पॉपर के रोकथाम ओवरफ्लो संशोधक पर लागू होती है)। डिफ़ॉल्ट रूप से, यह 'clippingParents' HTMLElement संदर्भ (केवल जावास्क्रिप्ट के माध्यम से) स्वीकार कर सकता है और स्वीकार कर सकता है। अधिक जानकारी के लिए पॉपर का डिटेक्ट ओवरफ्लो डॉक्स देखें । |
container |
स्ट्रिंग, तत्व, असत्य | false |
पॉपओवर को एक विशिष्ट तत्व में जोड़ता है। उदाहरण container: 'body' :। यह विकल्प विशेष रूप से इस मायने में उपयोगी है कि यह आपको ट्रिगरिंग तत्व के पास दस्तावेज़ के प्रवाह में पॉपओवर की स्थिति बनाने की अनुमति देता है - जो पॉपओवर को विंडो आकार बदलने के दौरान ट्रिगरिंग तत्व से दूर तैरने से रोकेगा। |
content |
स्ट्रिंग, तत्व, फ़ंक्शन | '' |
डिफ़ॉल्ट सामग्री मान यदि data-bs-content विशेषता मौजूद नहीं है। यदि कोई फ़ंक्शन दिया जाता है, तो इसे इसके this संदर्भ सेट के साथ उस तत्व पर सेट किया जाएगा जिससे पॉपओवर जुड़ा हुआ है। |
customClass |
स्ट्रिंग, फ़ंक्शन | '' |
दिखाए जाने पर पॉपओवर में कक्षाएं जोड़ें। ध्यान दें कि इन वर्गों को टेम्पलेट में निर्दिष्ट किसी भी वर्ग के अतिरिक्त जोड़ा जाएगा। अनेक वर्ग जोड़ने के लिए, उन्हें रिक्त स्थान से अलग करें: 'class-1 class-2' . आप एक फ़ंक्शन भी पास कर सकते हैं जो अतिरिक्त वर्ग नामों वाली एक स्ट्रिंग को वापस कर दे। |
delay |
संख्या, वस्तु | 0 |
पॉपओवर (ms) को दिखाने और छिपाने में देरी—मैन्युअल ट्रिगर प्रकार पर लागू नहीं होती है। यदि एक नंबर की आपूर्ति की जाती है, तो देरी को छिपाने/दिखाने दोनों पर लागू किया जाता है। वस्तु संरचना है: delay: { "show": 500, "hide": 100 } . |
fallbackPlacements |
स्ट्रिंग, सरणी | ['top', 'right', 'bottom', 'left'] |
सरणी में प्लेसमेंट की सूची प्रदान करके (वरीयता के क्रम में) फ़ॉलबैक प्लेसमेंट को परिभाषित करें। अधिक जानकारी के लिए पॉपर के व्यवहार दस्तावेज़ देखें । |
html |
बूलियन | false |
पॉपओवर में HTML को अनुमति दें। अगर सही है, तो पॉपओवर में HTML टैग्स पॉपओवर title में रेंडर किए जाएंगे। यदि गलत है, innerText तो DOM में सामग्री डालने के लिए संपत्ति का उपयोग किया जाएगा। यदि आप XSS हमलों के बारे में चिंतित हैं तो टेक्स्ट का उपयोग करें। |
offset |
संख्या, स्ट्रिंग, फ़ंक्शन | [0, 0] |
अपने लक्ष्य के सापेक्ष आबादी की भरपाई। आप अल्पविराम से अलग किए गए मानों के साथ डेटा विशेषताओं में एक स्ट्रिंग पास कर सकते हैं जैसे data-bs-offset="10,20" :। जब ऑफ़सेट को निर्धारित करने के लिए किसी फ़ंक्शन का उपयोग किया जाता है, तो इसे पॉपर प्लेसमेंट, संदर्भ, और पॉपर रेक्ट्स वाले ऑब्जेक्ट के साथ इसके पहले तर्क के रूप में कहा जाता है। ट्रिगरिंग तत्व DOM नोड को दूसरे तर्क के रूप में पास किया जाता है। फ़ंक्शन को दो संख्याओं के साथ एक सरणी वापस करनी चाहिए: स्किडिंग , दूरी । अधिक जानकारी के लिए पॉपर ऑफ़सेट डॉक्स देखें । |
placement |
स्ट्रिंग, फ़ंक्शन | 'top' |
पॉपओवर को कैसे पोजिशन करें: ऑटो, टॉप, बॉटम, लेफ्ट, राइट। जब auto निर्दिष्ट किया जाता है, तो यह पॉपओवर को गतिशील रूप से पुनर्व्यवस्थित करेगा। जब किसी फ़ंक्शन का उपयोग प्लेसमेंट को निर्धारित करने के लिए किया जाता है, तो इसे पॉपओवर DOM नोड को इसके पहले तर्क के रूप में और ट्रिगर करने वाले तत्व DOM नोड को इसके दूसरे के रूप में कहा जाता है। this संदर्भ पॉपओवर इंस्टेंस पर सेट है । |
popperConfig |
शून्य, वस्तु, कार्य | null |
बूटस्ट्रैप के डिफ़ॉल्ट पॉपर कॉन्फिगरेशन को बदलने के लिए, पॉपर का कॉन्फिगरेशन देखें । जब पॉपर कॉन्फ़िगरेशन बनाने के लिए फ़ंक्शन का उपयोग किया जाता है, तो इसे उस ऑब्जेक्ट के साथ बुलाया जाता है जिसमें बूटस्ट्रैप का डिफ़ॉल्ट पॉपर कॉन्फ़िगरेशन होता है। यह आपको अपने स्वयं के कॉन्फ़िगरेशन के साथ डिफ़ॉल्ट का उपयोग और विलय करने में मदद करता है। फ़ंक्शन को पॉपर के लिए कॉन्फ़िगरेशन ऑब्जेक्ट वापस करना होगा। |
sanitize |
बूलियन | true |
स्वच्छता को सक्षम या अक्षम करें। सक्रिय होने 'template' पर, 'content' और 'title' विकल्पों को साफ कर दिया जाएगा। |
sanitizeFn |
शून्य, फ़ंक्शन | null |
यहां आप अपने खुद के सैनिटाइज फंक्शन की आपूर्ति कर सकते हैं। यह उपयोगी हो सकता है यदि आप स्वच्छता के लिए एक समर्पित पुस्तकालय का उपयोग करना पसंद करते हैं। |
selector |
स्ट्रिंग, असत्य | false |
यदि कोई चयनकर्ता प्रदान किया जाता है, तो पॉपओवर ऑब्जेक्ट निर्दिष्ट लक्ष्यों को सौंपे जाएंगे। व्यवहार में, इसका उपयोग गतिशील रूप से जोड़े गए DOM तत्वों ( jQuery.on समर्थन) पर पॉपओवर लागू करने के लिए भी किया जाता है। यह समस्या और एक सूचनात्मक उदाहरण देखें । |
template |
डोरी | '<div class="popover" role="popover"><div class="popover-arrow"></div><div class="popover-inner"></div></div>' |
पॉपओवर बनाते समय उपयोग करने के लिए HTML को आधार बनाएं। पॉपओवर का title इंजेक्शन लगाया जाएगा .popover-inner । .popover-arrow पॉपओवर का तीर बन जाएगा। सबसे बाहरी आवरण तत्व में .popover वर्ग और role="popover" . |
title |
स्ट्रिंग, तत्व, फ़ंक्शन | '' |
डिफ़ॉल्ट शीर्षक मान यदि title विशेषता मौजूद नहीं है। यदि कोई फ़ंक्शन दिया जाता है, तो इसे इसके this संदर्भ सेट के साथ उस तत्व पर सेट किया जाएगा जिससे पॉपओवर जुड़ा हुआ है। |
trigger |
डोरी | 'hover focus' |
पॉपओवर कैसे ट्रिगर होता है: क्लिक करें, होवर करें, फ़ोकस करें, मैनुअल। आप कई ट्रिगर पास कर सकते हैं; उन्हें एक स्थान के साथ अलग करें। 'manual' इंगित करता है कि पॉपओवर को .popover('show') , .popover('hide') और .popover('toggle') विधियों के माध्यम से प्रोग्रामेटिक रूप से ट्रिगर किया जाएगा; इस मान को किसी अन्य ट्रिगर के साथ नहीं जोड़ा जा सकता है। 'hover' अपने आप पॉपओवर का परिणाम होगा जिसे कीबोर्ड के माध्यम से ट्रिगर नहीं किया जा सकता है, और इसका उपयोग केवल तभी किया जाना चाहिए जब कीबोर्ड उपयोगकर्ताओं के लिए समान जानकारी देने के लिए वैकल्पिक तरीके मौजूद हों। |
व्यक्तिगत पॉपओवर के लिए डेटा विशेषताएँ
अलग-अलग पॉपओवर के विकल्प वैकल्पिक रूप से डेटा विशेषताओं के उपयोग के माध्यम से निर्दिष्ट किए जा सकते हैं, जैसा कि ऊपर बताया गया है।
के साथ फ़ंक्शन का उपयोग करनाpopperConfig
const popover = new bootstrap.Popover(element, {
popperConfig(defaultBsPopperConfig) {
// const newPopperConfig = {...}
// use defaultBsPopperConfig if needed...
// return newPopperConfig
}
})
तरीकों
अतुल्यकालिक तरीके और संक्रमण
सभी एपीआई विधियाँ अतुल्यकालिक हैं और एक संक्रमण शुरू करती हैं । ट्रांज़िशन शुरू होते ही वे कॉलर के पास वापस आ जाते हैं लेकिन उसके समाप्त होने से पहले । इसके अलावा, एक संक्रमण घटक पर एक विधि कॉल को नजरअंदाज कर दिया जाएगा ।
तरीका | विवरण |
---|---|
disable |
किसी तत्व के पॉपओवर को दिखाने की क्षमता को हटा देता है। पॉपओवर केवल तभी दिखाया जा सकेगा जब इसे फिर से सक्षम किया गया हो। |
dispose |
किसी तत्व के पॉपओवर को छुपाता और नष्ट करता है (DOM तत्व पर संग्रहीत डेटा को हटाता है)। डेलिगेशन का उपयोग करने वाले पॉपओवर (जो विकल्प का उपयोग करकेselector बनाए गए हैं ) वंशज ट्रिगर तत्वों पर व्यक्तिगत रूप से नष्ट नहीं किए जा सकते हैं। |
enable |
किसी तत्व के पॉपओवर को दिखाने की क्षमता देता है। पॉपओवर डिफ़ॉल्ट रूप से सक्षम होते हैं। |
getInstance |
स्टेटिक विधि जो आपको DOM तत्व से जुड़े पॉपओवर इंस्टेंस को प्राप्त करने की अनुमति देती है। |
getOrCreateInstance |
स्टेटिक विधि जो आपको DOM तत्व से जुड़े पॉपओवर इंस्टेंस को प्राप्त करने की अनुमति देती है, या यदि इसे प्रारंभ नहीं किया गया था तो एक नया बनाएं। |
hide |
किसी तत्व का पॉपओवर छुपाता है। पॉपओवर से पहले कॉलर को रिटर्न वास्तव में छुपाया गया है (यानी hidden.bs.popover घटना होने से पहले)। इसे पॉपओवर का "मैनुअल" ट्रिगर माना जाता है। |
setContent |
पॉपओवर के शुरू होने के बाद उसकी सामग्री को बदलने का तरीका देता है। |
show |
किसी तत्व के पॉपओवर को प्रकट करता है। पॉपओवर से पहले कॉलर को रिटर्न वास्तव में दिखाया गया है (यानी shown.bs.popover घटना होने से पहले)। इसे पॉपओवर का "मैनुअल" ट्रिगर माना जाता है। पॉपओवर जिनका शीर्षक और सामग्री दोनों शून्य-लंबाई हैं, कभी प्रदर्शित नहीं होते हैं। |
toggle |
किसी तत्व के पॉपओवर को टॉगल करता है। पॉपओवर से पहले कॉलर को रिटर्न वास्तव में दिखाया या छिपाया गया है (अर्थात घटना shown.bs.popover या hidden.bs.popover घटना होने से पहले)। इसे पॉपओवर का "मैनुअल" ट्रिगर माना जाता है। |
toggleEnabled |
किसी तत्व के पॉपओवर को दिखाने या छिपाने की क्षमता को टॉगल करता है। |
update |
किसी तत्व के पॉपओवर की स्थिति को अपडेट करता है। |
// getOrCreateInstance example
const popover = bootstrap.Popover.getOrCreateInstance('#example') // Returns a Bootstrap popover instance
// setContent example
myPopover.setContent({
'.popover-header': 'another title',
'.popover-body': 'another content'
})
setContent
विधि एक तर्क को स्वीकार करती
है
, जहां प्रत्येक संपत्ति-कुंजी पॉपओवर टेम्पलेट के भीतर
object
एक वैध
चयनकर्ता है, और प्रत्येक संबंधित संपत्ति-मूल्य हो सकता है |
|
|
string
string
element
function
null
आयोजन
आयोजन | विवरण |
---|---|
hide.bs.popover |
hide इंस्टेंस विधि को कॉल किए जाने पर इस घटना को तुरंत निकाल दिया जाता है। |
hidden.bs.popover |
यह घटना तब सक्रिय हो जाती है जब पॉपओवर उपयोगकर्ता से छिपा हुआ समाप्त हो जाता है (सीएसएस ट्रांज़िशन पूरा होने की प्रतीक्षा करेगा)। |
inserted.bs.popover |
इस घटना को उस show.bs.popover घटना के बाद सक्रिय किया जाता है जब पॉपओवर टेम्पलेट को DOM में जोड़ा जाता है। |
show.bs.popover |
show इंस्टेंस विधि को कॉल करने पर यह घटना तुरंत सक्रिय हो जाती है। |
shown.bs.popover |
यह घटना तब सक्रिय होती है जब पॉपओवर उपयोगकर्ता को दिखाई देता है (सीएसएस ट्रांज़िशन पूरा होने की प्रतीक्षा करेगा)। |
const myPopoverTrigger = document.getElementById('myPopover')
myPopoverTrigger.addEventListener('hidden.bs.popover', () => {
// do something...
})