मुख्य सामग्रीवर जा डॉक्स नेव्हिगेशनवर जा
Check
in English

Popovers

बूटस्ट्रॅप पॉपओवर जोडण्यासाठी दस्तऐवजीकरण आणि उदाहरणे, जसे की iOS मध्ये आढळतात, तुमच्या साइटवरील कोणत्याही घटकामध्ये.

आढावा

पॉपओव्हर प्लगइन वापरताना जाणून घ्यायच्या गोष्टी:

  • पोपॉव्हर्स पोजीशनिंगसाठी थर्ड पार्टी लायब्ररी पॉपरवर अवलंबून असतात . तुम्ही आधी popper.min.js समाविष्ट करणे आवश्यक आहे किंवा Popper असलेले bootstrap.jsएक वापरा .bootstrap.bundle.min.js
  • पॉपओव्हरला अवलंबित्व म्हणून पॉपओव्हर प्लगइन आवश्यक आहे .
  • Popovers कार्यप्रदर्शन कारणांसाठी निवडले जातात, त्यामुळे तुम्ही ते स्वतःच सुरू केले पाहिजेत .
  • शून्य-लांबी titleआणि contentमूल्ये कधीही पॉपओव्हर दर्शवणार नाहीत.
  • container: 'body'अधिक जटिल घटकांमध्ये (जसे आमचे इनपुट गट, बटण गट इ.) रेंडरिंग समस्या टाळण्यासाठी निर्दिष्ट करा .
  • लपविलेल्या घटकांवर पॉपओव्हर ट्रिगर करणे कार्य करणार नाही.
  • .disabledरॅपर घटकावर किंवा disabledघटकांसाठी पॉपओव्हर्स ट्रिगर केले जाणे आवश्यक आहे.
  • एकाहून अधिक ओळींमध्ये गुंडाळलेल्या अँकरमधून ट्रिगर केल्यावर, पॉपओव्हर्स अँकरच्या एकूण रुंदीमध्ये केंद्रित केले जातील. हे वर्तन टाळण्यासाठी .text-nowrapतुमच्या s वर वापरा .<a>
  • DOM मधून संबंधित घटक काढून टाकण्यापूर्वी पॉपओव्हर्स लपलेले असणे आवश्यक आहे.
  • छाया DOM मधील घटकामुळे पॉपओव्हर्स ट्रिगर केले जाऊ शकतात.
डीफॉल्टनुसार, हा घटक अंगभूत सामग्री सॅनिटायझर वापरतो, जो स्पष्टपणे परवानगी नसलेले कोणतेही HTML घटक काढून टाकतो. अधिक तपशीलांसाठी आमच्या JavaScript दस्तऐवजीकरणातील सॅनिटायझर विभाग पहा .
या घटकाचा अॅनिमेशन प्रभाव prefers-reduced-motionमीडिया क्वेरीवर अवलंबून असतो. आमच्या प्रवेशयोग्यता दस्तऐवजीकरणाचा कमी गती विभाग पहा .

काही उदाहरणांसह popovers कसे कार्य करतात हे पाहण्यासाठी वाचन सुरू ठेवा.

उदाहरणे

पॉपओव्हर्स सक्षम करा

वर नमूद केल्याप्रमाणे, ते वापरण्यापूर्वी तुम्ही popovers सुरू करणे आवश्यक आहे. पृष्ठावरील सर्व पॉपओव्हर्स सुरू करण्याचा एक मार्ग म्हणजे त्यांना त्यांच्या data-bs-toggleगुणधर्मानुसार निवडणे, जसे की:

const popoverTriggerList = document.querySelectorAll('[data-bs-toggle="popover"]')
const popoverList = [...popoverTriggerList].map(popoverTriggerEl => new bootstrap.Popover(popoverTriggerEl))

थेट डेमो

आम्ही खालील थेट पॉपओव्हर रेंडर करण्यासाठी वरील स्निपेट प्रमाणेच JavaScript वापरतो. शीर्षके द्वारे सेट केली जातात data-bs-titleआणि मुख्य सामग्री द्वारे सेट केली जाते data-bs-content.

titleएकतर किंवा data-bs-titleतुमच्या HTML मध्ये मोकळ्या मनाने वापरा . जेव्हा वापरले जाते, तेव्हा घटक रेंडर केल्यावर titleपॉपर ते स्वयंचलितपणे बदलेल .data-bs-title
html
<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दिशा बदलण्यासाठी सेट करा .

html
<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'
})

सानुकूल popovers

v5.2.0 मध्ये जोडले

तुम्ही CSS व्हेरिएबल्स वापरून पॉपओव्हरचे स्वरूप सानुकूलित करू शकता . data-bs-custom-class="custom-popover"आम्ही आमच्या सानुकूल स्वरूपाच्या व्याप्तीसाठी एक सानुकूल वर्ग सेट करतो आणि काही स्थानिक CSS व्हेरिएबल्स ओव्हरराइड करण्यासाठी त्याचा वापर करतो.

.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;
}
html
<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विशेषता देखील समाविष्ट करणे आवश्यक आहे.

html
<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"जेणेकरून पॉपओव्हर तुमच्या वापरकर्त्यांना तत्काळ व्हिज्युअल फीडबॅक म्हणून दिसेल कारण ते कदाचित अक्षम केलेल्या घटकावर क्लिक करण्याची अपेक्षा करत नाहीत.

html
<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>

CSS

चल

v5.2.0 मध्ये जोडले

बूटस्ट्रॅपच्या विकसित होत असलेल्या CSS व्हेरिएबल्सच्या दृष्टिकोनाचा भाग म्हणून, पॉपओव्हर्स आता .popoverवर्धित रिअल-टाइम कस्टमायझेशनसाठी स्थानिक CSS व्हेरिएबल्स वापरतात. 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);
  

Sass चल

$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;

वापर

JavaScript द्वारे popovers सक्षम करा:

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-पर्याय डेटा विशेषता किंवा JavaScript द्वारे पास केले जाऊ शकतात म्हणून, तुम्ही मध्ये पर्याय नाव जोडू शकता data-bs-animation="{value}". डेटा विशेषतांद्वारे पर्याय पास करताना पर्याय नावाचा केस प्रकार “ camelCase ” वरून “ kebab-case ” मध्ये बदलण्याची खात्री करा. उदाहरणार्थ, 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 संदर्भ (केवळ JavaScript द्वारे) आहे आणि स्वीकारू शकते. अधिक माहितीसाठी Popper's detectOverflow डॉक्स पहा .
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प्रस्तुत केले जातील. असत्य असल्यास, innerTextDOM मध्ये सामग्री घालण्यासाठी प्रॉपर्टी वापरली जाईल. तुम्हाला 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
  }
})

पद्धती

असिंक्रोनस पद्धती आणि संक्रमणे

सर्व API पद्धती असिंक्रोनस आहेत आणि एक संक्रमण सुरू करतात . संक्रमण सुरू होताच परंतु ते संपण्यापूर्वी ते कॉलरकडे परत जातात . याव्यतिरिक्त, संक्रमण घटकावरील पद्धत कॉलकडे दुर्लक्ष केले जाईल .

अधिक माहितीसाठी आमचे JavaScript दस्तऐवजीकरण पहा .

पद्धत वर्णन
disable घटकाच्या पॉपओव्हरची क्षमता काढून टाकते. पॉपओव्हर पुन्हा-सक्षम केले तरच दाखवता येईल.
dispose घटकाचा पॉपओव्हर लपवतो आणि नष्ट करतो (DOM घटकावरील संग्रहित डेटा काढून टाकतो). डेलिगेशन वापरणारे पॉपओवर (जे पर्याय वापरून तयार केले जातात ) selectorवंशज ट्रिगर घटकांवर वैयक्तिकरित्या नष्ट केले जाऊ शकत नाहीत.
enable घटकाच्या पॉपओव्हरला दाखवण्याची क्षमता देते. Popovers डीफॉल्टनुसार सक्षम आहेत.
getInstance स्टॅटिक पद्धत जी तुम्हाला डीओएम घटकाशी संबंधित पॉपओव्हर उदाहरण मिळवू देते.
getOrCreateInstance स्टॅटिक पद्धत जी तुम्हाला डीओएम घटकाशी संबंधित पॉपओव्हर इन्स्टन्स मिळवू देते किंवा ते सुरू न झाल्यास नवीन तयार करू देते.
hide घटकाचे पॉपओव्हर लपवते. पॉपओव्हर प्रत्यक्षात लपविण्याआधी कॉलरकडे परत येतो (म्हणजे hidden.bs.popoverइव्हेंट होण्यापूर्वी). हे पॉपओव्हरचे "मॅन्युअल" ट्रिगरिंग मानले जाते.
setContent पॉपओव्हरची सामग्री सुरू झाल्यानंतर बदलण्याचा मार्ग देते.
show घटकाचे पॉपओव्हर प्रकट करते. पॉपओव्हर प्रत्यक्षात दाखवण्यापूर्वी कॉलरकडे परत येतो (म्हणजे shown.bs.popoverइव्हेंट होण्यापूर्वी). हे पॉपओव्हरचे "मॅन्युअल" ट्रिगरिंग मानले जाते. Popovers ज्यांचे शीर्षक आणि सामग्री दोन्ही शून्य-लांबीचे आहेत ते कधीही प्रदर्शित केले जात नाहीत.
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 जेव्हा पॉपओव्हर वापरकर्त्यापासून लपविले जाणे पूर्ण होते तेव्हा हा कार्यक्रम काढला जातो (CSS संक्रमण पूर्ण होण्याची प्रतीक्षा करेल).
inserted.bs.popover show.bs.popoverजेव्हा पॉपओव्हर टेम्पलेट DOM मध्ये जोडले गेले तेव्हा हा कार्यक्रम इव्हेंटनंतर काढला जातो .
show.bs.popover showजेव्हा उदाहरण पद्धत कॉल केली जाते तेव्हा हा इव्हेंट लगेच फायर होतो .
shown.bs.popover जेव्हा वापरकर्त्यासाठी पॉपओव्हर दृश्यमान केले जाते तेव्हा हा कार्यक्रम काढला जातो (CSS संक्रमण पूर्ण होण्याची प्रतीक्षा करेल).
const myPopoverTrigger = document.getElementById('myPopover')
myPopoverTrigger.addEventListener('hidden.bs.popover', () => {
  // do something...
})