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] }); 

好吧,现在看起来很时髦。你真的要自己尝试了解什么我谈论...;!(

感谢你提前

+0

只是我的假设已经在jsfiddle中测试过,你想创建一个级联对话效果?如果是这样,错误发生,因为你已经在你的位置切换left_value和top_value,请尝试使用:position:[800 - top_value,800 - left_value] – lock 2010-10-01 00:40:43

+0

是的,我试图创建级联效果,其中一个在彼此之上。 – tpae 2010-10-01 16:05:45

禁用的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"); 
    } 
}); 
+0

您可以接受您自己的答案,以表明这是您所达成的解决方案。 – 2010-10-06 16:21:09

运行示例代码,我没有看到原来的一招我注意到他们不正确地叠加,但是我觉得那是因为你要添加140一40到另一个。这可能是一个错字,但。

top_value = top_value + 140; // Try + 40 instead 
+0

我特意这样定位它,以产生层叠效果,就好像一张照片在另一张照片上。 – tpae 2010-10-01 16:06:07