Bootstrap JS Popover
JS Popover (popover.js)
Plugin Popover je podobný nápovědám; je to vyskakovací okno, které se objeví, když uživatel klikne na prvek. Rozdíl je v tom, že popover může obsahovat mnohem více obsahu.
Závislost na pluginu: Popovers vyžadují, aby byl ve vaší verzi Bootstrapu zahrnut plugin tooltip (tooltip.js).
Chcete-li získat výukový program o Popovers, přečtěte si náš Výukový program Bootstrap Popover .
Přes data-* Atributy
data-toggle="popover"
Aktivuje vyskakovací okno .
Atribut title
určuje text záhlaví vyskakovacího okna.
Atribut data-content
určuje text, který se má zobrazit v těle vyskakovacího okna.
Příklad
<a href="#" data-toggle="popover" title="Popover Header" data-content="Some
content inside the popover">Toggle popover</a>
Prostřednictvím JavaScriptu
Popovers nejsou pouze pluginy CSS, a proto musí být inicializovány pomocí jQuery: vyberte zadaný prvek a zavolejte
popover()
metodu.
Příklad
// Select all
elements with data-toggle="popover" in the document
$('[data-toggle="popover"]').popover();
// Select a specified
element
$('#myPopover').popover();
Popover Options
Možnosti lze předávat prostřednictvím atributů dat nebo JavaScriptu. U datových atributů připojte název možnosti k data-, jako v data-placement="".
Name | Type | Default | Description | Try it |
---|---|---|---|---|
animation | boolean | true |
Specifies whether to add a CSS fade transition effect when opening and closing the popover
|
|
container | string, or the boolean false | false | Appends the popover to a specific element. Example: container: 'body' |
|
content | string | "" | Specifies the text inside the popover's body | |
delay | number, or object | 0 | Specifies the number of milliseconds it will take to open and close the popover. To specify a delay for opening and another one for closing, use the object structure: delay: {show: 500, hide: 100} - which will take 500 ms to open the popover, but only 100 ms to close it |
|
html | boolean | false | Specifies whether to accept HTML tags in the popover:
When set to false (default), jQuery's text() method will be used. Use this if you are worried about XSS attacks |
|
placement | string | "right" | Specifies the popover position. Possible values:
|
|
selector | string, or the boolean false | false | Adds the popover to a specified selector | |
template | string | Base HTML to use when creating the popover. The popover's title will be injected into the .popover-title. The popover's content will be injected into the .popover-content. .arrow will become the popover's arrow. The outermost wrapper element should have the .popover class. |
||
title | string | "" | Specifies the header text of the popover | |
trigger | string | "click" | Specifies how the popover is triggered. Possible values:
|
|
viewport | string, or object | {selector: "body", padding: 0} | Keeps the popover within the bounds of this element. Example: viewport: '#viewport' or {selector: '#viewport', padding: 0} |
Popover metody
V následující tabulce jsou uvedeny všechny dostupné metody vyskakovacího okna.
Method | Description | Try it |
---|---|---|
.popover(options) | Activates the popover with an option. See options above for valid values | |
.popover("show") | Shows the popover | |
.popover("hide") | Hides the popover | |
.popover("toggle") | Toggles the popover | |
.popover("destroy") | Hides and destroys the popover |
Popover události
V následující tabulce jsou uvedeny všechny dostupné překryvné události.
Event | Description | Try it |
---|---|---|
show.bs.popover | Occurs when the popover is about to be shown | |
shown.bs.popover | Occurs when the popover is fully shown (after CSS transitions have completed) | |
hide.bs.popover | Occurs when the popover is about to be hidden | |
hidden.bs.popover | Occurs when the popover is fully hidden (after CSS transitions have completed) |
Další příklady
Vlastní Popover Design
Pomocí CSS přizpůsobte vzhled vyskakovacího okna:
Příklad
/* Popover */
.popover {
border: 2px dotted red;
}
/* Popover Header */
.popover-title {
background-color: #73AD21;
color: #FFFFFF;
font-size: 28px;
text-align:center;
}
/* Popover Body */
.popover-content {
background-color: coral;
color: #FFFFFF;
padding: 25px;
}
/* Popover Arrow */
.arrow {
border-right-color: red !important;
}