Bootstrap JS Popover
JS Popover (popover.js)
ปลั๊กอิน Popover นั้นคล้ายกับคำแนะนำเครื่องมือ เป็นกล่องป๊อปอัปที่ปรากฏขึ้นเมื่อผู้ใช้คลิกที่องค์ประกอบ ความแตกต่างก็คือป๊อปโอเวอร์สามารถมีเนื้อหาได้มากขึ้น
การพึ่งพาปลั๊กอิน: Popovers ต้องการปลั๊กอินคำแนะนำเครื่องมือ (tooltip.js) เพื่อรวมไว้ใน Bootstrap เวอร์ชันของคุณ
สำหรับบทแนะนำเกี่ยวกับ Popovers โปรดอ่านBootstrap Popover Tutorialของเรา
ผ่าน data-* คุณสมบัติ
เปิดdata-toggle="popover"
ใช้งานป๊อปโอเวอร์
แอตทริบิวต์title
ระบุข้อความส่วนหัวของป๊อปโอเวอร์
แอตทริบิวต์data-content
ระบุข้อความที่ควรแสดงภายในเนื้อหาของป๊อปโอเวอร์
ตัวอย่าง
<a href="#" data-toggle="popover" title="Popover Header" data-content="Some
content inside the popover">Toggle popover</a>
ผ่าน JavaScript
ป๊อปอัปไม่ใช่ปลั๊กอินเฉพาะ CSS และต้องเริ่มต้นด้วย jQuery: เลือกองค์ประกอบที่ระบุและเรียกใช้
popover()
เมธอด
ตัวอย่าง
// Select all
elements with data-toggle="popover" in the document
$('[data-toggle="popover"]').popover();
// Select a specified
element
$('#myPopover').popover();
ตัวเลือกป๊อปโอเวอร์
ตัวเลือกสามารถส่งผ่านแอตทริบิวต์ข้อมูลหรือ JavaScript สำหรับแอตทริบิวต์ข้อมูล ให้ผนวกชื่อตัวเลือกต่อ data- เช่นเดียวกับใน 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
ตารางต่อไปนี้แสดงรายการเมธอดป๊อปโอเวอร์ที่มีอยู่ทั้งหมด
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 |
เหตุการณ์ป๊อปโอเวอร์
ตารางต่อไปนี้แสดงรายการเหตุการณ์ป๊อปโอเวอร์ที่มีอยู่ทั้งหมด
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) |
ตัวอย่างเพิ่มเติม
การออกแบบ Popover แบบกำหนดเอง
ใช้ CSS เพื่อปรับแต่งรูปลักษณ์ของป๊อปโอเวอร์:
ตัวอย่าง
/* 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;
}