我有一个网站 here ...
我没有创造一个小提琴,因为我不确定如何用ajax复制这个问题。
当网站加载时,有一个自动弹出窗口会引入一个ajax请求。
偏离中心,当我在那里添加位置标志时,模态根本没有出现。我没有任何语法错误,所以我不确定是什么问题。
使用此代码,弹出窗口会打开(但偏离中心)......
$(document).ready( function() {
jQuery('#compliance').load('jquery-ajax.html').dialog();
});
当我添加位置标记时,它根本不显示...
$(document).ready( function() {
jQuery('#compliance').load('jquery-ajax.html').dialog({
position: {my: "center top", at:"center top", of: window },
});
});
这是最终有效的......
$(document).ready( function() {
jQuery('#compliance').load('jquery-ajax.html').dialog({
resizable: false,
modal: true,
width: 750,
show: 'fade',
hide: 'fade',
position: {my: "center top", at:"center top", of: window }
});
});
答案 0 :(得分:1)
我相信你的问题与将ajax加载到模态框中有关。这可能会导致内容大小调整等问题。您可以尝试添加
jQuery('#compliance').load('jquery-ajax.html').dialog({
resizable: false,
modal: true,
width:'auto'
});
此外,为了将来参考,您在处理元素时不必使用jQuery
。您可以使用$
标志。如果这不起作用,那么您可能会遇到DOM中的javascripts的加载顺序问题
答案 1 :(得分:0)
短暂的超时重新定位对话为我做了伎俩。所有其他尝试都失败了。
setTimeout(function(){
$("#dialog-selector").dialog('option', 'position', 'center');
}, 50);