Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使jquery模式始终以页面为中心?_Javascript_Jquery - Fatal编程技术网

Javascript 如何使jquery模式始终以页面为中心?

Javascript 如何使jquery模式始终以页面为中心?,javascript,jquery,Javascript,Jquery,我发现这是大多数jquery模式弹出框的问题。所以我想知道,有没有jquery代码可以使jquery模式始终位于页面的中心?我知道这可以通过纯javascript代码实现,但是jquery呢 如果您使用的是自定义模态,以下几种样式可能会对您有所帮助: <div id="modal"></div> #modal { position: fixed; height: 80px; width: 200px; left: 50%; top

我发现这是大多数jquery模式弹出框的问题。所以我想知道,有没有jquery代码可以使jquery模式始终位于页面的中心?我知道这可以通过纯javascript代码实现,但是jquery呢

如果您使用的是自定义模态,以下几种样式可能会对您有所帮助:

<div id="modal"></div>

#modal {
    position: fixed;
    height: 80px;
    width: 200px;
    left: 50%;
    top: 50%;
    margin-left: -40px;
    margin-right: -100px;
}

#模态{
位置:固定;
高度:80px;
宽度:200px;
左:50%;
最高:50%;
左边距:-40px;
右边距:-100px;
}

“位置:固定”根据窗口将模态保持在特定位置。高度和宽度显然提供了大小,而左/页边距左侧和顶部/页边距顶部实际上将其居中。左侧边距和顶部边距必须分别为宽度/高度的负一半。

如果要使用jQuery将元素居中,请尝试此操作

var browserW = $(window).width();
var centerEle = (browserW - 960) / 2; //if ur website design's width 960

$('.centeredEle').css({'left':centerEle + 'px'});//or margin-left, ur choise

如果您对jquery感到满意,您可以使用以下jquery函数

jQuery.fn.center = function () {
    this.css("position","absolute");
    this.css("top", (($(window).height() - this.outerHeight()) / 2) + $(window).scrollTop() + "px");
    this.css("left", (($(window).width() - this.outerWidth()) / 2) + $(window).scrollLeft() + "px");
    return this;
}

你说的是非jqueryUI模式吗?重复问题:其中一个答案有一个JSFIDLE示例。。