*bootstrap官方說明:http://v3.bootcss.com/javascript/#popovers
一. popover常用配置參數:
1 //常用配置參數:
2 $(document).ready(function() {
3 $('#temp').popover(
4 {
5 trigger:'click', //觸發方式
6 template: '', //你自定義的模板
7 title:"標題",//設置 彈出框 的標題
8 html: true, // 為true的話,data-content里就能放html代碼了
9 content:"",//這里可以直接寫字符串,也可以 是一個函數,該函數返回一個字符串;
10 }
11 );
12 }
13 //常用方法:
14 $('#element').popover('show');
15 $('#element').popover('hide');
16 $('#element').popover('destroy')
二. 案例分析:
1. 案例要求:動態產生一個按鈕,並給頁面中所有具有data-toggle="popover"屬性的元素綁定popover(彈出框)效果,觸發方式:當鼠標指針放到元素上時彈出彈出框,離開元素時,彈出框消失;彈出框內容要求:一定要包含該觸發彈窗元素的文本信息;
2. html代碼:(注意引入bootstrap.js和樣式)
1 <body> 2 <a id="temp1" tabindex="0" class="btn btn-lg btn-danger" role="button" data-toggle="popover" title="Dismissible popover" >彈出框1</a> 3 <a id="temp2" tabindex="0" class="btn btn-lg btn-danger" role="button" data-toggle="popover">彈出框2</a> 4 5 <div id="LinkDIV" style="float:left;width:200px"> 6 </div> 7 </body>
3. js代碼:
<script>
$(function () {
$("#LinkDIV").html('<button type="btn btn-lg btn-primary" data-toggle="popover" id="temp3">彈出框3</button>');
$('[data-toggle="popover"]').each(function () {
var element = $(this);
var id = element.attr('id');
var txt = element.html();
element.popover({
trigger: 'manual',
placement: 'bottom', //top, bottom, left or right
title: txt,
html: 'true',
content: ContentMethod(txt),
}).on("mouseenter", function () {
var _this = this;
$(this).popover("show");
$(this).siblings(".popover").on("mouseleave", function () {
$(_this).popover('hide');
});
}).on("mouseleave", function () {
var _this = this;
setTimeout(function () {
if (!$(".popover:hover").length) {
$(_this).popover("hide")
}
}, 100);
});
});
});
function ContentMethod(txt) {
return '<table class="table table-bordered"><tr><td>' + txt + '</td><td>BB</td><td>CC</td><td>DD</td></tr>' +
'<tr><td>' + txt + '</td><td>BB</td><td>CC</td><td>DD</td></tr>' +
'<tr><td>' + txt + '</td><td>BB</td><td>CC</td><td>DD</td></tr>'+
'<tr><td>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA</td><td>BB</td><td>CC</td><td>DD</td></tr></table>';
}
</script>
4. 效果圖:


*tips:
1. 彈出框的最大寬度有默認值:275px;(bootstrap.min.css)
1 .popover {
2 position: absolute;
3 top: 0;
4 left: 0;
5 z-index: 1060;
6 display: none;
7 max-width: 2000px;//我改為了2000px
8 padding: 1px;
9 font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
10 font-size: 14px;
11 font-style: normal;
12 font-weight: 400;
13 line-height: 1.42857143;
14 text-align: left;
15 text-align: start;
16 text-decoration: none;
17 text-shadow: none;
18 text-transform: none;
19 letter-spacing: normal;
20 word-break: normal;
21 word-spacing: normal;
22 word-wrap: normal;
23 white-space: normal;
24 background-color: #fff;
25 -webkit-background-clip: padding-box;
26 background-clip: padding-box;
27 border: 1px solid #ccc;
28 border: 1px solid rgba(0,0,0,.2);
29 border-radius: 6px;
30 -webkit-box-shadow: 0 5px 10px rgba(0,0,0,.2);
31 box-shadow: 0 5px 10px rgba(0,0,0,.2);
32 line-break: auto;
33 }
