这是我的困境 - 我有一个由两列元素(使用
然而,在列表中我有两个需要跨越两个列的元素。不幸的是,这破坏了模型的可用性。如果我坚持使用标准的两列设置,我会遇到宽元素重叠或与另一列中的元素相互错位的情况。
我也尝试迭代两列以重新定位元素,以便不会重叠,但后来我意识到另一个问题:我的第二列(右边的列)不知道在左侧列中定位的元素。
以下是我的标记的简化示例:
这个应该对齐的方式类似于这张表格:
<div>
进行样式设置)组成的列表,我需要使它们可排序。对于在一列或另一列中的元素,这很容易 - 我只需设置两列,将我的元素置于它们最初应该在的位置,标记它们为“可排序”,然后让jQuery完成其魔术。然而,在列表中我有两个需要跨越两个列的元素。不幸的是,这破坏了模型的可用性。如果我坚持使用标准的两列设置,我会遇到宽元素重叠或与另一列中的元素相互错位的情况。
我也尝试迭代两列以重新定位元素,以便不会重叠,但后来我意识到另一个问题:我的第二列(右边的列)不知道在左侧列中定位的元素。
以下是我的标记的简化示例:
<div id="wrapper">
<div id="column-1" class="column" style="width:400px;">
<div id="item-1" class="item" style="width:200px;">
...
</div>
<div id="item-2" class="item wide" style="width:400px;">
...
</div>
<div id="item-3" class="item" style="width:200px;">
...
</div>
</div>
<div id="column-2" class="column">
<div id="item-4" class="item" style="width:200px;">
...
</div>
<div id="item-5" class="item" style="width:200px;">
...
</div>
</div>
</div>
这个应该对齐的方式类似于这张表格:
-------------------
| item 1 | item 4 |
| item 2 |
| item 3 | item 5 |
-------------------
每个项目都可以被拖放到其他位置,1、3、4、5项之间可以在两列之间互换,2号项目可以根据需要上下移动。实际上,您也应该能够得到类似这样的结果:
-------------------
| item 1 | |
| item 2 |
| item 3 | item 5 |
| item 4 | |
-------------------
然而,使用标准列模型(即来自多天谷歌搜索的唯一资源 - jQuery示例和我迄今为止的所有尝试),这种方法行不通。
那么,我该如何使用jQuery UI Sortable插件实现这种布局,以便继续构建我的用户界面呢?