jQuery ui Dialog:关闭Dialog内容的'Draggable'

时间:2011-07-18 17:29:53

标签: jquery jquery-ui draggable jquery-ui-dialog

我有一个大脑放屁,似乎无法获得我的jquery ui对话框的内容以阻止'可拖动'。我关闭了实际对话框弹出窗口中的可拖动设置,但是,框内的内容仍然可以从框的视图中拖出。我想在盒子里放一个静态定位的盒子和静态定位的内容。

这是我的代码:

$('.LinkBtn').click(function (e) {
        e.preventDefault();
        var OfferID = $(this).attr('id').substring(8);
        $('#HiddenLinks_' + OfferID).show();
        newDialog(OfferID);
    });
    function newDialog(OfferID) {
        var divObj = $('#HiddenLinks_' + OfferID);
        var $dialog = divObj
        .draggable()
        .dialog({
            draggable: false,
            autoOpen: false,
            resizable: false,
            modal: false,
            title: $('#HiddenLinks_' + OfferID).attr('title')
        }).draggable(false);
        $dialog.dialog('open');
        return false
    }

谢谢!

5 个答案:

答案 0 :(得分:11)

    $('#popup').dialog({
        width: 600,
        modal: true,
        resizable: false,
        draggable: false
    });

在此示例中,我在对话框中禁用了可拖动和可调整大小的事件。

答案 1 :(得分:5)

$("#test_id").dialog({
    display: 'block',
    width: 500,
    modal: true,
    resizable: false,
    draggable: false,
    buttons: {
       "Ok": function() {
            $(this).dialog("close");
        }
    }
});

答案 2 :(得分:4)

当你这样做时: $("div").draggable({disabled:true}) div变得透明,您可以从禁用中删除该类,因此不会发生这种情况:
$("div").removeClass(' ui-draggable-disabled ui-state-disabled');

答案 3 :(得分:3)

你也可以通过以下方式将draggable设置为false:

$("div").draggable({disabled:true}) // this will disable dragging on a draggable object
$("div").draggable({disabled:false}) // this will enable dragging on a draggable object

答案 4 :(得分:1)

如果您想阻止用户重新调整对话框的大小,可以使用下面的代码。

$("#yourDivId").dialog("option", "resizable", false);

这将禁止用户重新调整对话框的大小。