使用 jQuery UI,我正在尝试创建一个带有两个可滚动容器的界面,每个容器都包含许多可拖动元素。用户可以将元素从一个容器拖到另一个容器。
丢弃功能不是问题。删除时,该元素将分离并在其新父项下的正确位置重新创建。
我的问题是,当容器已应用时,可拖动元素无法显示在其容器外position:relative;
,因此在拖动时,将元素移出容器边界时会消失。
这种默认行为是有意义的,因为通常用户希望在其容器内拖动一个元素。作为一种解决方法,我假设解决方案是使用可拖动属性“appendTo”,我认为这会将元素移到其容器之外,但不幸的是,这似乎没有任何效果。
DOM:(每个视图都是可滚动的,每个容器都有 position:relative 并且与容纳所有元素所需的一样大)
BODY
VIEW 1
CONTAINER
DRAGGABLE ELEMENTS
VIEW 2
CONTAINER
DRAGGABLE ELEMENTS
Javascript:
$('div.card').draggable({
appendTo: 'body',
scroll: false //stops scrolling container when moved outside boundaries
});
请参阅 JSFiddle 以获得对该问题的简化说明。我不想用可放置的代码使示例变得臃肿,所以这只是说明了拖动问题。http://jsfiddle.net/Em7Ak/
提前谢谢了。