私は 2 つのリストを持っています。最初のリストにはユーザーが選択できる項目のリストが含まれており、2 番目のリストにドラッグして選択します。これを jQuery UI Sortable で実装し、jsfiddleで基本的な例を作成しました。
アイテムを最初のリストから 2 番目のリストにドラッグします。OK です。2 番目のリストの一番下までスクロールすると、問題が発生します。最初のリストから 2 番目のリストにアイテムをドラッグすることはできません。表示されているリストの末尾を超えてオーバーフローしたすべてのリスト項目には、ドロップ ターゲットが関連付けられていないようです。反対方向にコピーするときも同じことが起こります。
sortable はリストを対象としているように見えるので、トリックを見逃しているのではないかと思います。何か案は?
jsfiddle のサンプル コードは次のとおりです。
html
<div class="listDiv">
<ul id="list1" class="connected ui-sortable">
<li id="a">a</li>
<li id="b">b</li>
<li id="c">c</li>
<li id="d">d</li>
<li id="e">e</li>
<li id="f">f</li>
<li id="g">g</li>
<li id="h">h</li>
<li id="i">i</li>
<li id="j">j</li>
</ul>
</div>
<div class="listDiv">
<ul id="list1" class="connected ui-sortable">
<li id="1">1</li>
<li id="2">2</li>
<li id="3">3</li>
<li id="4">4</li>
<li id="5">5</li>
<li id="6">6</li>
<li id="7">7</li>
<li id="8">8</li>
<li id="9">9</li>
<li id="10">10</li>
<li id="11">11</li>
<li id="12">12</li>
<li id="13">13</li>
<li id="14">14</li>
<li id="15">15</li>
</ul>
</div>
js
$(function() {
$( "#list1, #list2" ).sortable({
connectWith: ".connected"
}).disableSelection();
});
CSS
.listDiv {
overflow:auto;
float: left;
width:400px;
border: 1px solid #999;
}
#list1, #list2 {
list-style-type: none;
height: 200px;
}
#list1 li, #list2 li {
font-size: 11px;
margin: 0 5px 5px;
padding: 5px;
width: 300px;
border: 1px solid #C5DBEC;
font-family: Verdana,Arial,Helvetica,sans-serif;
font-weight: bold;
outline: medium none;
}