【问题标题】:jQuery ui Dialog: Turn off 'Draggable' for Dialog contentjQuery ui 对话框:关闭对话框内容的“可拖动”
【发布时间】:2011-10-07 21:16:30
【问题描述】:

我脑子有问题,似乎无法让我的 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
    }

谢谢!

【问题讨论】:

  • 如果您不想希望它是可拖动的,为什么要在<div> 上调用draggable()
  • 哈哈哎呀 :) 谢谢你发现.. 我一定是瞎了。

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


【解决方案1】:
    $('#popup').dialog({
        width: 600,
        modal: true,
        resizable: false,
        draggable: false
    });

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

【讨论】:

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

    【讨论】:

    • 虽然此代码可能会回答问题,但提供有关 why 和/或 如何 此代码回答问题的附加上下文将显着改善其长期-期限价值。请edit你的答案添加一些解释。
    【解决方案3】:

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

    【讨论】:

      【解决方案4】:

      您也可以通过以下方式将可拖动设置为 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
      

      【讨论】:

        【解决方案5】:

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

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

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

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-06-07
          • 1970-01-01
          • 2011-10-05
          • 1970-01-01
          • 2017-06-29
          • 1970-01-01
          相关资源
          最近更新 更多