Popover.js

来源:互联网 发布:如何用记事本编写java 编辑:程序博客网 时间:2024/06/05 11:27

基本配置参数

//常用配置参数:$(document).ready(function() {    $('#temp').popover(        {            trigger:'click', //触发方式            template: '', //自定义模板            title:"标题",//设置 弹出框 的标题            html: true, // 为true的话,data-content里就能放html代码了            content:"",//这里可以直接写字符串,也可以 是一个函数,该函数返回一个字符串;        }     );}//常用方法:$('#element').popover('show');$('#element').popover('hide');$('#element').popover('destroy')

弹出框(Popover)插件不像之前所讨论的下拉菜单及其他插件那样,它不是纯 CSS 插件。如需使用该插件,您必须使用 jquery 激活它(读取 javascript)。使用下面的脚本来启用页面中的所有的弹出框(popover):

$(function () { $("[data-toggle='popover']").popover(); });

弹窗的默认设置

.popover {  position: absolute;  top: 0;  left: 0;  z-index: 1060;  display: none;  max-width: 276px;   //**默认弹窗宽度为276px,如需更改,需要再当页的样式重新设置进行覆盖**  padding: 1px;  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;  font-size: 14px;  font-style: normal;  font-weight: normal;  line-height: 1.42857143;  text-align: left;  text-align: start;  text-decoration: none;  text-shadow: none;  text-transform: none;  letter-spacing: normal;  word-break: normal;  word-spacing: normal;  word-wrap: normal;  white-space: normal;  background-color: #fff;  -webkit-background-clip: padding-box;          background-clip: padding-box;  border: 1px solid #ccc;  border: 1px solid rgba(0, 0, 0, .2);  border-radius: 6px;  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2);          box-shadow: 0 5px 10px rgba(0, 0, 0, .2);  line-break: auto;}

可以修改或者覆盖.popover的属性,如果只在一个页面中需要修改在其他页面不需要修改时,则可以在这个页面修改.popover的属性:

.popover {    width:auto;    max-width:800px;}

如果给多个按钮一起绑定了popover,但是在使用的时候只想让一次只出现一个弹出层,如果在点击的时候设置其他绑定了popover弹出层隐藏,再让点击的这一个弹出层显示,如下:

$("button").popover({placement:"left",title:"这是一个弹出层",content:"这特么的是内容!",trigger:" click"});$("button").each(function(){    $(".popover").hide();   //或者$(".popover").popover("hide");    $(this).popover("show")});

这样在显示的时候是没有问题的,但是在第二次或以后再次点击已经被隐藏的弹出层按钮的时候,弹出层会闪动一下,效果不好看。

后来又研究了一下,popover的触发方式有四种,分别是:hover、click、focus、manual,其中manual是手动触发,即使用(element).popover("show")(element).popover(“hide”)的方式,那么我们可以将所有绑定了popover的按钮的trigger改为manual,在每个事件中将其他所有.popover隐藏,将点击的这个显示,这样便不会出现画面一闪的情况。

$("button").popover({placement:"left",title:"这是一个弹出层",content:"这特么的是内容!",trigger:" manual"});$("button").each(function(){    $(".popover").popover("hide");    $(this).popover("show")});