2

我正在使用代码在桌面类型环境中以级联方式打开多个对话框。问题是阻止对话框在容器“#desktop”div 之外打开。我已经尝试了包含选项,使用带有 at: 和 inside: 的定位选项,但没有运气。我可以将可拖动选项 div 设置为 #desktop 并且它正确地保留在 div 中。我在这里有一个用于测试的小提琴设置。到目前为止,这是我的代码:

var dialogOffset = {
    top: 10,
    left: 200
};
$('button').click(function () {
    var parent = $('#desktop');
    var parentPos = parent.offset();
    var parentIndex = $('#desktop').index(parent);
    var numDialogs = $('.dlg' + parentIndex).length;
    var dialogTop = parentPos.top + dialogOffset.top + numDialogs * 30;
    var dialogPosition = [parentPos.left + dialogOffset.left + numDialogs * 30, dialogTop];

    $('<div class="dlg' + parentIndex + '"></div>').dialog({
        position: dialogPosition,
        width: 250,
        close: function () {
            $(this).dialog('destroy').remove();
        }
    });
});

任何帮助都是极好的。谢谢。

4

0 回答 0