【发布时间】:2013-05-04 16:38:49
【问题描述】:
我有模型对话框,而模型对话框打开设置主体overflow:hidden 这使得模型窗口只显示一半。 onclose 重置正文溢出。
正文高度大于窗口大小,并且在打开模式对话框之外滚动了一些位置。
如何获得中心显示模态对话框?
【问题讨论】:
-
你用什么库来做模态的?
标签: javascript jquery html css modal-dialog
我有模型对话框,而模型对话框打开设置主体overflow:hidden 这使得模型窗口只显示一半。 onclose 重置正文溢出。
正文高度大于窗口大小,并且在打开模式对话框之外滚动了一些位置。
如何获得中心显示模态对话框?
【问题讨论】:
标签: javascript jquery html css modal-dialog
作为一个选项,您可以创建函数来根据窗口大小定位模态框,如下所示:
类似这样的:
function repositionModal(modal){
var windowW = $(window).width(),
windowH = $(window).height(),
modalW = modal.width(),
modalH = modal.height();
if (modalW>windowW) modal.width(windowW);
if (modalH>windowH) modal.height(windowH);
modal.css({
"top": (windowH-modalH)/2)+"px",
"left": (windowW-modalW)/2)+"px"
});
}
然后在调用 modal 时调用此函数,并且可能也在窗口调整大小时调用此函数
$(window).resize(function(){
if($(".my-modal").is(:visible)){
repositionModal($(".my-modal"))
}
})
【讨论】: