javascript - 滚动后如何使主体隐藏的模态窗口居中?

标签 javascript jquery html css modal-dialog

我有模型对话框,当模型对话框打开时设置正文 overflow:hidden 这使得模型窗口只显示一半。 onclose 重置正文溢出。

body 高度大于窗口大小并且滚动了一些比打开模式对话框的地方。

如何获取中心显示模态对话框?

enter image description here

最佳答案

作为一个选项,您可以创建函数来根据窗口大小定位模态框,如下所示:

是这样的:

    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"
    });
    }

然后在调用模态时调用此函数,并且可能也在调整窗口大小时调用此函数

$(window).resize(function(){
     if($(".my-modal").is(:visible)){
         repositionModal($(".my-modal"))
     }
})

关于javascript - 滚动后如何使主体隐藏的模态窗口居中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16371945/

相关文章:

jquery - Spring MVC 选择什么 jQuery 表插件?

html - 为开放模式创建背景 - CSS NO BOOTSTRAP

javascript - 向下滚动时隐藏的粘性标题 + 固定进度条

javascript - 在图像中绘制和绘制区域

javascript - 如何使用 oauth 发出 twitter get 请求?

jquery - Mouseleave隐藏元素?

javascript - JWT jsonwebtoken在node.js中没有过期

javascript - 如何清除javascript中div的文本内容?

javascript - 从mysql查询生成的多个文本区域中选择一个文本区域

PHP imagecopyresampled + 如何获得最好的结果