Popover with dismiss button
by Fran Carstens
HTML
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<div class="example-popovers">
<p>
<button type="button" class="btn btn-default" data-toggle="popover" data-placement="right" data-content="<div class="clearfix"><div class="btn-group"><button class="btn btn-success btn-sm">Yes</button><button class="btn btn-default btn-sm close-popover" data-dismiss="popover" >No</button></div></div></div>" title="Delete this">Delete this</button>
</p>
<p>
<button type="button" class="btn btn-default" data-toggle="popover" data-placement="right" data-content="<div class="clearfix"><div class="btn-group"><button class="btn btn-success btn-sm">Yes</button><button class="btn btn-default btn-sm close-popover" data-dismiss="popover" >No</button></div></div></div>" title="Delete this">Delete this</button>
</p>
<p>
<button type="button" class="btn btn-default" data-toggle="popover" data-placement="right" data-content="<div class="clearfix"><div class="btn-group"><button class="btn btn-success btn-sm">Yes</button><button class="btn btn-default btn-sm close-popover" data-dismiss="popover" >No</button></div></div></div>" title="Delete this">Delete this</button>
</p>
<p>
<button type="button" class="btn btn-default" data-toggle="popover" data-placement="right" data-content="<div class="clearfix"><div class="btn-group"><button class="btn btn-success btn-sm">Yes</button><button class="btn btn-default btn-sm close-popover" data-dismiss="popover" >No</button></div></div></div>" title="Delete this">Delete this</button>
</p>
</div>
CSS
.popover-header {
padding:8px 14px;
background-color:#f7f7f7;
border-bottom:1px solid #ebebeb;
-webkit-border-radius:5px 5px 0 0;
-moz-border-radius:5px 5px 0 0;
border-radius:5px 5px 0 0;
}
.popover-title {
margin:0;
padding:0;
background-color:transparent;
border:none;
}
.example-popovers {
padding:30px 0;
}
JavaScript
$.fn.extend({
popoverClosable: function (options) {
var defaults = {
html: true,
template:
'<div class="popover">\
<div class="arrow"></div>\
<div class="popover-header">\
<button type="button" class="close" data-dismiss="popover" aria-hidden="true">×</button>\
<h3 class="popover-title"></h3>\
</div>\
<div class="popover-content"></div>\
</div>'
};
options = $.extend({}, defaults, options);
var $popover_togglers = this;
$popover_togglers.popover(options);
$popover_togglers.on('click', function (e) {
e.preventDefault();
$popover_togglers.not(this).popover('hide');
});
$('html').on('click', '[data-dismiss="popover"]', function (e) {
$popover_togglers.popover('hide');
});
}
});
$(function () {
$('[data-toggle="popover"]').popoverClosable();
});