Javascript 向下滚动时的jQuery对话框位置
我正在使用此javascript/jQuery打开一个对话框,但是,当我向下滚动页面并在关闭第一个窗口后打开另一个窗口时,该窗口将在我的选择位置以及我向下滚动的位置打开。当我尝试移动它时,它将继续向下跳,造成非常恼人的结果Javascript 向下滚动时的jQuery对话框位置,javascript,jquery,Javascript,Jquery,我正在使用此javascript/jQuery打开一个对话框,但是,当我向下滚动页面并在关闭第一个窗口后打开另一个窗口时,该窗口将在我的选择位置以及我向下滚动的位置打开。当我尝试移动它时,它将继续向下跳,造成非常恼人的结果 function showDialog(url) { dialogFrame = $('<iframe style="width:100% !important;" frameborder="0" id="Dialog" src="' + url + '" /
function showDialog(url) {
dialogFrame = $('<iframe style="width:100% !important;" frameborder="0" id="Dialog" src="' + url + '" />').dialog({
autoOpen: true,
height: 500,
width: 1000,
title: 'myWindow',
resizable: false,
modal: true,
position: {
my: "center",
at: "center",
of: window
}
});
}
函数显示对话框(url){
dialogFrame=$('')。对话框({
自动打开:对,
身高:500,
宽度:1000,
标题:“myWindow”,
可调整大小:false,
莫代尔:是的,
职位:{
我的“中心”,
在“中心”,
的:窗口
}
});
}
如何防止这种行为?这可能是
位置:{}
但它应该是什么?当主体
具有CSS属性位置:相对时,我对jQuery UI对话框也有同样的问题代码>。你可能想检查一下情况是否如此
在我的情况下,我无法删除位置:relative
因此我决定覆盖顶部
值并使用固定定位:
$(".dialogFrame").dialog({
// ...
open: function(event, ui) {
$(event.target).parent().css('position', 'fixed');
$(event.target).parent().css('top', '20px');
}
// ...
});
可以通过计算屏幕的有效中心来优化脚本。很好,可能还有其他解决方案,所以我暂时将其打开。如果我没有记错,问题在于计算对话框的最大值。您可以尝试position:['middle',20],
来显式设置顶部值吗?为什么不使用屏幕顶部的固定位置position:fixed代码>这不会修复拖放解决方案,它仍在向下跳跃。