给出2个div,两个都是自动滚动。 我希望能够将项目从Div1拖动到Div2,或者在Div1内部拖动。
项目永远不会在Div2中 - Div2上的掉落事件会将它放在Div1上的正确位置
到目前为止,这很容易,但这里有障碍 - Div2需要能够在拖动时垂直滚动。
我无法在jQuery draggable中找到任何有助于此的内容,所以我尝试创建自己的悬停区域,这会导致Div2上的滚动。这在拖动时不起作用但在拖动时不起作用。我怀疑jQuery正在窃取事件,导致我不能解雇。
HTML:
<div id="Outer">
<div id="Div1">
<div class='Item'></div>
<div class='Item'></div>
<div class='Item'></div>
</div>
<div id="Div2">
<div class="ScrollUp"></div>
some long content that causes a scrollbar
<div class="ScrollDown"></div>
</div>
</div>
的CSS:
#Div1, #Div2
{
overflow: auto;
}
的javascript:
$('#Div1>.Item').draggable({appendTo: $('#Outer')});
$('#Div1').droppable({tolerance: 'pointer'});
$('#Div2').droppable({drop: Div2Drop});
function Div2Drop() {}; //function places the item into the approriate place in Div1
$('#ScrollUp, #ScrollDown').mouseenter(function(){... }); /* These 2 events don't */
$('#ScrollUp, #ScrollDown').mouseout(function(){... }); /* fire when dragging */
在内部拖动时,Div1也需要可滚动。
如何让事件触发,或者有更好的方法来执行此操作? (也许是我错过的可拖动和可丢弃交互内部的东西?