jquery ui对话框,有多个对话框影响位置
由于我在做多个对话框,所以我遇到了困难。这里是我的代码:jquery ui对话框,有多个对话框影响位置
var dialog_count = 3;
$(function() {
var left_value = 0;
var top_value = 0;
for(var i = 1; i < dialog_count+1; i++) {
$('.dialog_' + i).dialog({ width: 263, position: [800 - left_value, 800 - top_value] });
left_value = left_value + 40;
top_value = top_value + 140;
}
});
它应该做的:叠放整齐每个对话框上的指定位置
它做什么:不知何故重新定位为新的被添加在每个对话框。
我试图玩弄它,这就是我所做的,在3个步骤
$('.dialog_1').dialog({ width: 263, position: [300, 700] });
,这是正确的位置,现在我要添加第二个之一。
$('.dialog_1').dialog({ width: 263, position: [300, 700] });
$('.dialog_2').dialog({ width: 263, position: [250, 550] });
da heck?它自己移动了另一个......现在他们都没有正确定位。
$('.dialog_1').dialog({ width: 263, position: [300, 700] });
$('.dialog_2').dialog({ width: 263, position: [250, 550] });
$('.dialog_3').dialog({ width: 263, position: [200, 400] });
好吧,现在看起来很时髦。你真的要自己尝试了解什么我谈论...;!(
感谢你提前
禁用的AutoOpen,并且必须设置为通过期权头寸后,并打电话打开方法,已成功运作。
原来,autoOpen功能不会让对话框完全置于彼此之上,因此它会相应地移动它们。
var dialog_count = 3;
$(function() {
var left_value = 0;
var top_value = 0;
for(var i = 1; i < dialog_count+1; i++) {
$('.dialog_' + i).dialog({ width: 263, position: [500, 500], autoOpen: false });
}
for(var i = 1; i < dialog_count+1; i++) {
$('.dialog_' + i).dialog("option", "position", [500,500]);
$('.dialog_' + i).dialog("open");
}
});
您可以接受您自己的答案,以表明这是您所达成的解决方案。 – 2010-10-06 16:21:09
运行示例代码,我没有看到原来的一招我注意到他们不正确地叠加,但是我觉得那是因为你要添加140一40到另一个。这可能是一个错字,但。
top_value = top_value + 140; // Try + 40 instead
我特意这样定位它,以产生层叠效果,就好像一张照片在另一张照片上。 – tpae 2010-10-01 16:06:07
只是我的假设已经在jsfiddle中测试过,你想创建一个级联对话效果?如果是这样,错误发生,因为你已经在你的位置切换left_value和top_value,请尝试使用:position:[800 - top_value,800 - left_value] – lock 2010-10-01 00:40:43
是的,我试图创建级联效果,其中一个在彼此之上。 – tpae 2010-10-01 16:05:45