jQuery UI Draggable,Sortable - 禁止拖动元素

时间:2014-01-04 13:44:53

标签: javascript jquery jquery-ui draggable jquery-ui-sortable

这是我正在使用的脚本:

    $(".nav .row").draggable({
    connectToSortable: ".demo",
    helper: "clone",
    handle: ".drag",
    drag: function (e, t) {
        t.helper.width(400)
    },
    stop: function (e, t) {
        $(".demo .column").sortable({
            opacity: .35,
            connectWith: ".column"
        })
    }
});

它的基本功能是它允许拖动新行并允许在这些行内的列内拖动元素。

以下是输出示例:

<div class='demo'>
     <div class='row'>
          <div class='column'>
          </div>
     </div>
</div>

它的问题在于它允许在该列类中拖动另一行,我想防止这种情况发生,这就是:

<div class='demo'>
     <div class='row'>
          <div class='column'>
               <div class='row'>
                    <div class='column'>
                    </div>
               </div>
          </div>
     </div>
</div>

任何人都可以给我一些建议,以防止这种情况发生吗?

1 个答案:

答案 0 :(得分:0)

这种情况正在发生,因为$(".nav .row")会在导航容器中选择类.row的所有元素。您可以添加另一个类名来定位特定行,例如:

<div class='demo'>
     <div class='row dragabble'>
          <div class='column'>
          </div>
     </div>
</div>

$(".nav .draggable").draggable({
    connectToSortable: ".demo",
    helper: "clone",
    handle: ".drag",
    drag: function (e, t) {
        t.helper.width(400)
    },
    stop: function (e, t) {
        $(".demo .column").sortable({
            opacity: .35,
            connectWith: ".column"
        })
    }
});
相关问题