【发布时间】:2012-12-18 19:04:33
【问题描述】:
使用 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/
非常感谢。
【问题讨论】:
标签: jquery-ui jquery-ui-draggable