2

我有两组瓷砖,如下图所示。每个图块都是一个 DIV。

在此处输入图像描述

我希望能够将磁贴拖到组内的新位置或相邻组内的新位置。

和windows 8类似,我也希望能够将组中的一个磁贴拖到两个组之间的空间中,为磁贴创建一个新组。

在此处输入图像描述

这是我能够做到的程度 - 我能够创建一个可拖动排序的单个组。

<div class="demo">
    <ul id="sortable">
        <li class="ui-state-default">1</li>
        <li class="ui-state-default">2</li>
        <li class="ui-state-default wide">3</li>
        <li class="ui-state-default">4</li>
        <li class="ui-state-default">5</li>
    </ul>
</div>

http://jsfiddle.net/psivadasan/FmWCx/

感谢任何帮助。谢谢你的时间。

4

2 回答 2

3

我过去做过类似的事情,这就是我实现它的方式:http: //jsfiddle.net/dazefs/vGYVX/

<div style="background-color:Gray">

<ul id="sortable">
    <li>
      <span style="background-color:yellow">
         Item 1
       </span>

     </li>
    <li>
     <span style="background-color:red">
       Item 2
     </span>

    </li>
    <li>
      <span style="background-color:green">
     Item 3
     </span>

  </li>
    <li>
    <span style="background-color:Blue">
           Item 4
     </span>
     </li>
   </ul>

<ul id="sortable2" style="width:60%">
<li>
    <span style="background-color:yellow">
        Item 5
    </span>
</li>
    <li>
    <span style="background-color:red">
        Item 6
    </span>
</li>
    <li>
    <span style="background-color:green">
        Item 7
    </span>
   </li>
    <li>
       <span style="background-color:Blue">
          Item 8
       </span>
   </li>
</ul>

 </div>

$(function () {
    $("#sortable, #sortable2").sortable({
        connectWith: "#sortable2, #sortable",
        receive: function (event, ui) {
             alert('item has been sorted');
         }
    });

    //})
});

要实现 3 个瓦片组:

http://jsfiddle.net/dazefs/XRdz6/

于 2012-05-24T18:47:33.363 回答
2

小提琴:http: //jsfiddle.net/iambriansreed/A8NYw/

$(function() {
    $("#sortable1,#sortable2")
        .sortable({ connectWith: ".sortable"})
        .disableSelection();
});​
于 2012-05-24T18:56:56.403 回答