我的项目中有多个bootbox对话框,我希望它们全部显示在屏幕的中心,我无法单独去计算每个框的高度,并在模态显示时将其定位在中心。有没有一种常见的方法来做到这一点。有没有办法在引导框可见时触发事件,我尝试了'DOMNodeInserted',但这给出了递归错误,也尝试了livequery但是这没有用。任何人都可以告诉我如何在公共点处显示对话框时触发事件。
jQuery(document).on('DOMNodeInserted', function(e) {
if(jQuery(e.target).hasClass('modal')) {
setTimeout(function(){
if(jQuery(e.target).height()/2 > 1){
var topPos = ((jQuery(window).height() - 30)/2) - jQuery(e.target).find('.modal-dialog').height()/2;
jQuery('.modal-content').css('top', topPos);
}
},200);
}
});
此致
NEHA
答案 0 :(得分:0)
试用此代码
.on("shown.bs.modal", function(e) {
alert("bootbox is visible");
});
<强>更新强>
将bootbox对准中心
.on("shown.bs.modal", function(e) {
$('.modal-content').css({
'transition':'margin-top 1s linear',
'margin-top': function (){
var w = $( window ).height();
var b = $(".modal-dialog").height();
var h = (w-b)/2;
return h+"px";
}
});
});