გადადით მთავარ შინაარსზე დოკუმენტების ნავიგაციაზე გადასვლა
Check
in English

პოპოვერები

დოკუმენტაცია და მაგალითები Bootstrap popover-ების დასამატებლად, როგორიცაა iOS-ში ნაპოვნი ნებისმიერი ელემენტი თქვენს საიტზე.

მიმოხილვა

რა უნდა იცოდეთ popover მოდულის გამოყენებისას:

  • პოპოვერები ეყრდნობიან მესამე მხარის ბიბლიოთეკას Popper- ს პოზიციონირებისთვის. მანამდე უნდა შეიტანოთ popper.min.jsbootstrap.js ან გამოიყენოთ ის, bootstrap.bundle.min.jsრომელიც შეიცავს პოპერს.
  • პოპოვერებს სჭირდებათ popover მოდული , როგორც დამოკიდებულება.
  • Popover-ები დაშვებულია შესრულების მიზეზების გამო, ასე რომ თქვენ თავად უნდა მოაწყოთ ისინი .
  • ნულოვანი სიგრძე titleდა contentმნიშვნელობები არასოდეს აჩვენებს პოპოვერს.
  • მიუთითეთ container: 'body', რათა თავიდან აიცილოთ პრობლემები უფრო რთულ კომპონენტებში (როგორიცაა ჩვენი შეყვანის ჯგუფები, ღილაკების ჯგუფები და ა.შ.).
  • დამალულ ელემენტებზე პოპოვერების გააქტიურება არ იმუშავებს.
  • პოპოვერები .disabledან disabledელემენტები უნდა იყოს ჩართული შეფუთვის ელემენტზე.
  • როდესაც ამოქმედდება წამყვანებიდან, რომლებიც ხვდება რამდენიმე ხაზს, პოვერები ორიენტირებული იქნება წამყვანების საერთო სიგანეს შორის. გამოიყენეთ .text-nowrapთქვენი <a>s, რათა თავიდან აიცილოთ ეს ქცევა.
  • პოპოვერები უნდა იყოს დამალული, სანამ მათი შესაბამისი ელემენტები DOM-დან წაიშლება.
  • პოპოვერების გააქტიურება შესაძლებელია ჩრდილოვანი DOM-ის შიგნით არსებული ელემენტის წყალობით.
ნაგულისხმევად, ეს კომპონენტი იყენებს ჩაშენებულ კონტენტის გამაჯანსაღებელს, რომელიც აშორებს HTML ელემენტებს, რომლებიც აშკარად დაუშვებელია. იხილეთ სადეზინფექციო განყოფილება ჩვენს JavaScript დოკუმენტაციაში დამატებითი ინფორმაციისთვის.
ამ კომპონენტის ანიმაციური ეფექტი დამოკიდებულია prefers-reduced-motionმედიის მოთხოვნაზე. იხილეთ ჩვენი ხელმისაწვდომობის დოკუმენტაციის შემცირებული მოძრაობის განყოფილება .

განაგრძეთ კითხვა, რომ ნახოთ როგორ მუშაობს პოპოვერები რამდენიმე მაგალითით.

მაგალითები

პოპოვერების ჩართვა

როგორც ზემოთ აღინიშნა, თქვენ უნდა მოაწყოთ პოპოვერები, სანამ ისინი გამოიყენებთ. გვერდზე ყველა პოპოვერის ინიციალიზაციის ერთ-ერთი გზა იქნება მათი 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>

ოთხი მიმართულება

ოთხი ვარიანტია ხელმისაწვდომი: ზედა, მარჯვენა, ქვედა და მარცხენა. RTL-ში Bootstrap-ის გამოყენებისას მიმართულებები ასახულია. დააყენეთ 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'
})

მორგებული პოპოვერები

დამატებულია 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ტრიგერი, რათა გააუქმოთ popovers მომხმარებლის შემდეგი დაწკაპუნებით სხვა ელემენტზე, ვიდრე გადართვის ელემენტი.

საჭიროა კონკრეტული მარკირება შემდეგი დაწკაპუნებით გაუქმებისთვის

ბრაუზერის და კროს პლატფორმის სწორი ქცევისთვის, თქვენ უნდა გამოიყენოთ <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-ში

როგორც Bootstrap-ის განვითარებადი CSS ცვლადების მიდგომის ნაწილი, პოპოვერები ახლა იყენებენ ადგილობრივ CSS ცვლადებს .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);
  

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-ით:

const exampleEl = document.getElementById('example')
const popover = new bootstrap.Popover(exampleEl, options)

კლავიატურის და დამხმარე ტექნოლოგიების მომხმარებლებისთვის პოპოვერების დამზადება

იმისათვის, რომ კლავიატურის მომხმარებლებს საშუალება მისცეთ გაააქტიურონ თქვენი popovers, თქვენ უნდა დაამატოთ ისინი მხოლოდ HTML ელემენტებში, რომლებიც ტრადიციულად კლავიატურაზე ფოკუსირებადი და ინტერაქტიულია (როგორიცაა ბმულები ან ფორმის კონტროლი). მიუხედავად იმისა, რომ თვითნებური HTML ელემენტები (როგორიცაა <span>s) შეიძლება ფოკუსირებადი გახდეს tabindex="0"ატრიბუტის დამატებით, ეს დაამატებს პოტენციურად შემაწუხებელ და დამაბნეველ ჩანართებს არაინტერაქტიულ ელემენტებზე კლავიატურის მომხმარებლებისთვის და დამხმარე ტექნოლოგიების უმეტესობა ამჟამად არ აცხადებს პოპოვერის კონტენტს ამ სიტუაციაში. . გარდა ამისა, არ დაეყრდნოთ მხოლოდ hoverთქვენი პოპოვერების გამომწვევს, რადგან ეს შეუძლებელს გახდის მათ გაშვებას კლავიატურის მომხმარებლებისთვის.

მიუხედავად იმისა, რომ თქვენ შეგიძლიათ ჩასვათ მდიდარი, სტრუქტურირებული HTML პოპოვერებში ამ ოფციით html, ჩვენ გირჩევთ, რომ თავიდან აიცილოთ ზედმეტი რაოდენობის კონტენტის დამატება. პოპოვერების ამჟამად მუშაობის გზა არის ის, რომ, როდესაც გამოჩნდება, მათი შინაარსი მიბმულია ტრიგერის ელემენტთან aria-describedbyატრიბუტით. შედეგად, პოპოვერის მთლიანი შინაარსი გამოცხადდება დამხმარე ტექნოლოგიების მომხმარებლებს, როგორც ერთი გრძელი, უწყვეტი ნაკადი.

გარდა ამისა, მიუხედავად იმისა, რომ შესაძლებელია თქვენს პოპოვერში ინტერაქტიული კონტროლის (როგორიცაა ფორმის ელემენტები ან ბმულები) ჩართვა (ამ ელემენტების allowListდაშვებულ ატრიბუტებსა და ტეგებში დამატებით), გაითვალისწინეთ, რომ ამჟამად პოპოვერი არ მართავს კლავიატურის ფოკუსის წესრიგს. როდესაც კლავიატურის მომხმარებელი ხსნის პოპოვერს, ფოკუსირება რჩება გამომწვევ ელემენტზე და რადგან პოპოვერი, როგორც წესი, დაუყოვნებლივ არ მიჰყვება ტრიგერს დოკუმენტის სტრუქტურაში, არ არსებობს გარანტია, რომ წინსვლა/დაჭერაTABგადაიყვანს კლავიატურის მომხმარებელს თავად პოპოვერში. მოკლედ, პოპოვერზე ინტერაქტიული კონტროლის უბრალოდ დამატება, სავარაუდოდ, ამ კონტროლს მიუწვდომელ/გამოუყენებელს გახდის კლავიატურის მომხმარებლებისთვის და დამხმარე ტექნოლოგიების მომხმარებლებისთვის, ან სულ მცირე, ალოგიკური საერთო ფოკუსის წესრიგს. ამ შემთხვევაში, განიხილეთ მოდალური დიალოგის ნაცვლად.

Პარამეტრები

იმის გამო, რომ ოფციების გადაცემა შესაძლებელია მონაცემთა ატრიბუტების ან JavaScript-ის საშუალებით, შეგიძლიათ დაამატოთ ოფციის სახელი data-bs-, როგორც data-bs-animation="{value}". დარწმუნდით, რომ შეცვალეთ ოფციის სახელის ქეისის ტიპი „ camelCase “-დან „ kebab-case “-ზე ოფციების მონაცემთა ატრიბუტების მეშვეობით გადაცემისას. მაგალითად, გამოიყენეთ data-bs-custom-class="beautifier"ნაცვლად data-bs-customClass="beautifier".

როგორც Bootstrap 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 fade გადასვლა პოპოვერზე.
boundary სიმებიანი, ელემენტი 'clippingParents' პოპოვერის გადინების შეზღუდვის საზღვარი (გამოიყენება მხოლოდ Popper-ის preventOverflow მოდიფიკატორზე). ნაგულისხმევად, მას 'clippingParents'შეუძლია მიიღოს HTMLElement მითითება (მხოლოდ JavaScript-ის საშუალებით). დამატებითი ინფორმაციისთვის იხილეთ Popper's detectOverflow docs .
container სტრიქონი, ელემენტი, ყალბი false ანიჭებს პოპოვერს კონკრეტულ ელემენტს. მაგალითი container: 'body':. ეს პარამეტრი განსაკუთრებით სასარგებლოა იმით, რომ საშუალებას გაძლევთ მოათავსოთ პოპოვერი დოკუმენტის ნაკადში გამომწვევ ელემენტთან ახლოს - რაც ხელს შეუშლის პოპოვერს ტრიგერის ელემენტისგან მოშორებას ფანჯრის ზომის შეცვლის დროს.
content სტრიქონი, ელემენტი, ფუნქცია '' კონტენტის ნაგულისხმევი მნიშვნელობა, თუ data-bs-contentატრიბუტი არ არის. თუ ფუნქცია მოცემულია, ის გამოიძახება მისი thisმითითების ნაკრებით იმ ელემენტთან, რომელზეც არის მიმაგრებული popover.
customClass სიმებიანი, ფუნქცია '' დაამატეთ კლასები popover-ში, როდესაც ის გამოჩნდება. გაითვალისწინეთ, რომ ეს კლასები დაემატება შაბლონში მითითებულ კლასებს. რამდენიმე კლასის დასამატებლად გამოყავით ისინი ინტერვალით: 'class-1 class-2'. თქვენ ასევე შეგიძლიათ გადასცეთ ფუნქცია, რომელიც უნდა დააბრუნოს ერთი სტრიქონი, რომელიც შეიცავს დამატებით კლასის სახელებს.
delay ნომერი, ობიექტი 0 პოპოვერის (ms) ჩვენების და დამალვის დაგვიანება — არ ვრცელდება ხელით ტრიგერის ტიპზე. თუ ნომერი მოწოდებულია, დაგვიანება გამოიყენება ორივე დამალვა/ჩვენებაზე. ობიექტის სტრუქტურა არის: delay: { "show": 500, "hide": 100 }.
fallbackPlacements სტრიქონი, მასივი ['top', 'right', 'bottom', 'left'] განსაზღვრეთ სარეზერვო განლაგება მასივში განლაგების სიის მიწოდებით (უპირატესობის მიხედვით). დამატებითი ინფორმაციისთვის იხილეთ პოპერის ქცევის დოკუმენტები .
html ლოგიკური false HTML-ის დაშვება პოპოვერში. თუ სიმართლეა, HTML ტეგები popover-ში titleიქნება გამოსახული popover-ში. თუ false, innerTextთვისება გამოყენებული იქნება კონტენტის DOM-ში ჩასართავად. გამოიყენეთ ტექსტი, თუ გაწუხებთ XSS შეტევები.
offset ნომერი, სტრიქონი, ფუნქცია [0, 0] პოპოვერის კომპენსირება მის სამიზნეთან შედარებით. თქვენ შეგიძლიათ გადასცეთ სტრიქონი მონაცემთა ატრიბუტებში მძიმით გამოყოფილი მნიშვნელობებით, როგორიცაა: data-bs-offset="10,20". როდესაც ფუნქცია გამოიყენება ოფსეტის დასადგენად, ის გამოიძახება ობიექტით, რომელიც შეიცავს პოპერის განლაგებას, მითითებას და პოპერის რექტს, როგორც მის პირველ არგუმენტს. გამომწვევი ელემენტი DOM კვანძი გადაეცემა მეორე არგუმენტად. ფუნქციამ უნდა დააბრუნოს მასივი ორი ნომრით: ცურვა , მანძილი . დამატებითი ინფორმაციისთვის იხილეთ პოპერის ოფსეტური დოკუმენტები .
placement სიმებიანი, ფუნქცია 'top' როგორ განვათავსოთ პოპოვერი: ავტომატური, ზედა, ქვედა, მარცხნივ, მარჯვნივ. როდესაც autoმითითებულია, ის დინამიურად გადააბრუნებს პოპოვერს. როდესაც ფუნქცია გამოიყენება განლაგების დასადგენად, ის გამოიძახება popover DOM კვანძით, როგორც მისი პირველი არგუმენტი და გამომწვევი ელემენტის DOM კვანძი, როგორც მისი მეორე. thisკონტექსტი დაყენებულია პოპოვერის მაგალითზე .
popperConfig null, ობიექტი, ფუნქცია null Bootstrap-ის ნაგულისხმევი Popper კონფიგურაციის შესაცვლელად იხილეთ Popper-ის კონფიგურაცია . როდესაც ფუნქცია გამოიყენება Popper-ის კონფიგურაციის შესაქმნელად, მას უწოდებენ ობიექტს, რომელიც შეიცავს Bootstrap-ის ნაგულისხმევ პოპერის კონფიგურაციას. ის გეხმარებათ გამოიყენოთ და შეაერთოთ ნაგულისხმევი კონფიგურაცია. ფუნქციამ უნდა დააბრუნოს Popper-ის კონფიგურაციის ობიექტი.
sanitize ლოგიკური true ჩართეთ ან გამორთეთ სანიტარიზაცია. თუ გააქტიურებულია 'template', 'content'და 'title'ოფციები გასუფთავდება.
sanitizeFn null, ფუნქცია null აქ შეგიძლიათ მიაწოდოთ თქვენი საკუთარი სადეზინფექციო ფუნქცია. ეს შეიძლება იყოს სასარგებლო, თუ გირჩევნიათ გამოიყენოთ გამოყოფილი ბიბლიოთეკა სანიტარიულობის შესასრულებლად.
selector სტრიქონი, ყალბი false თუ სელექტორი არის მოწოდებული, popover ობიექტები დელეგირებული იქნება მითითებულ სამიზნეებზე. პრაქტიკაში, ეს გამოიყენება აგრეთვე პოპოვერების გამოსაყენებლად დინამიურად დამატებულ 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მითითების ნაკრებით იმ ელემენტთან, რომელზეც არის მიმაგრებული popover.
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 აძლევს ელემენტის პოპოვერს ჩვენების უნარს. ნაგულისხმევად ჩართულია პოპოვერები.
getInstance სტატიკური მეთოდი, რომელიც საშუალებას გაძლევთ მიიღოთ პოპოვერის ინსტანცია ასოცირებული DOM ელემენტთან.
getOrCreateInstance სტატიკური მეთოდი, რომელიც საშუალებას გაძლევთ მიიღოთ პოპოვერის ინსტანცია ასოცირებული DOM ელემენტთან, ან შექმნათ ახალი, თუ ის არ იყო ინიციალიზებული.
hide მალავს ელემენტის პოპოვერს. უბრუნდება აბონენტს პოპოვერის რეალურად დამალვამდე (ანუ hidden.bs.popoverმოვლენის დადგომამდე). ეს განიხილება პოპოვერის „სახელმძღვანელო“ გამომწვევად.
setContent საშუალებას გაძლევთ შეცვალოთ პოპოვერის შინაარსი მისი ინიციალიზაციის შემდეგ.
show ავლენს ელემენტის პოპოვერს. უბრუნდება აბონენტს პოპოვერის რეალურად ჩვენებამდე (ანუ shown.bs.popoverმოვლენის დადგომამდე). ეს განიხილება პოპოვერის „სახელმძღვანელო“ გამომწვევად. პოპოვერები, რომელთა სათაურიც და შინაარსიც ნულოვანი სიგრძისაა, არასოდეს გამოჩნდება.
toggle ცვლის ელემენტის პოპოვერს. უბრუნდება აბონენტს პოპოვერის რეალურად ჩვენებამდე ან დამალვამდე (ანუ, სანამ shown.bs.popoverან hidden.bs.popoverმოვლენა მოხდება). ეს განიხილება პოპოვერის „სახელმძღვანელო“ გამომწვევად.
toggleEnabled ცვლის ელემენტის popover-ის ჩვენების ან დამალვის შესაძლებლობას.
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გააქტიურებულია ღონისძიების შემდეგ, როდესაც popover-ის შაბლონი დაემატება DOM-ს.
show.bs.popover ეს მოვლენა მაშინვე ირთვება, როდესაც showგამოიძახება ეგზემპლარის მეთოდი.
shown.bs.popover ეს ღონისძიება გააქტიურებულია, როდესაც პოპოვერი გახდება მომხმარებლისთვის ხილული (დაელოდება CSS გადასვლების დასრულებას).
const myPopoverTrigger = document.getElementById('myPopover')
myPopoverTrigger.addEventListener('hidden.bs.popover', () => {
  // do something...
})