可排序列表重叠并防止拖放

时间:2012-10-31 15:58:33

标签: javascript html css jquery-ui-sortable

我这里有一个JSfiddle来证明我的问题。 http://jsfiddle.net/J6uM5/4/

<div id="list-A" style="height:50px; overflow-y:scroll; border:1px solid red">
<ul class="sortable">
    <li>item 1</li>
    <li>item 2</li>
    <li>item 3</li>
    <li>item 4</li>
    <li>item 5</li>
    <li>item 6</li>
    <li>item 7</li>
    <li>item 8</li>
    <li>item 9</li>
    <li>item 10</li>
    <li>item 11</li>
    <li>item 12</li>
    <li>item 13</li>
    <li>item 14</li>
    <li>item 15</li>
    <li>item 16</li>
</ul>


<div id="list-B">
<ul class="sortable">
    <li>item 4</li>
    <li>item 5</li>
    <li>item 6</li>
</ul>

这是JS

$(function() {
$('.sortable').sortable({

    connectWith: ".sortable",
    scroll:false,

}).disableSelection();

});

问题是sortable1(虽然被div隐藏)仍然延伸到dom中的sortable2。为了成功地将项目从list1拖动到list2,您必须滚动到list1的底部,或者如果向下滚动得足够远,list1不会重叠list2。任何工作都将受到赞赏。

1 个答案:

答案 0 :(得分:1)

通过在实际可排序列表(ul)而不是包装器上设置高度/溢出,它似乎工作。

#sortable1 {
    height:25px;
    overflow-y:scroll;
    padding-bottom:35px;
}

见这里:

http://jsfiddle.net/J6uM5/8/

那是你在找什么?