我有这个问题,我在css中有一个隐藏的div。当我单击一个按钮时,会显示div。但我希望它显示在屏幕的中心,以及我所处的位置。让我解释一下,如果我在页面的中间,我希望将其显示在页面的中心和中心(垂直和水平(,如果我位于页面的结尾,我希望在页面的结尾显示在中心。我需要在js中完成此操作。
有了这个功能,我可以做一些事情,但div显示在页面的中心,我被移动到了中心,而我不想从我所在的位置移动,并打开屏幕中心的div
function setToCenterOfParent(element, parent, ignoreWidth, ignoreHeight){
parentWidth = $(parent).width();
parentHeight = $(parent).height();
elementWidth = $(element).width();
elementHeight = $(element).height();
if(!ignoreWidth)
$(element).css('left', parentWidth/2 - elementWidth/2);
if(!ignoreHeight)
$(element).css('top', parentHeight/2 - elementHeight/2);
}
你能帮我吗?谢谢
尝试此解决方案,Francesco
let centerY = $(window).scrollTop() + ($(window).height() - element.height())/2;
let centerX = $(window).scrollLeft() + ($(window).width() - element.width())/2;
element.offset({top:centerY, left:centerX});
在我的情况下,它的工作原理与类似