我正在尝试在2 Div之间实现拖放
请参考下面的小提琴: http://jsfiddle.net/sandeepkram/SAUCa/
此布局是我的应用程序的副本。在小提琴中你可以看到,如果你在第一个div中拖动一个元素(在左侧)它会永远在该div中移动 - 尽管如果你只是动作鼠标拖放到右侧div,它实际上确实工作
这里的问题是左侧div内元素的无限滚动/拖动。我不知道这里有什么问题 -
在我的应用程序中,我有另一个问题,因为当我从左侧div中拖出一个项目时,它会消失,虽然我可以将光标放在右侧div上,并且拖放似乎已正常工作。
需要帮助才能知道拖动元素消失的原因。
我在stackoverflow和网上查找了与此相关的所有问题和资源,sortables等 - 但没有用。
我也试过使用“堆栈”选项,但没有使用
$.each($("ul#secondaryKPIList ul > li"), function (index, tListItem) {
$(tListItem).addClass("SecondaryKPIDraggable");
$(tListItem).draggable({
revert : 'invalid',
stack: '.SecondaryKPIDraggable'
});
});
答案 0 :(得分:4)
要解决视觉问题,您只需删除溢出更改
即可overflow-y: auto;
overflow-x: hidden;
在.KpisListItems上将其设置为以下小提琴:http://jsfiddle.net/GEWLs/2
这些规则搞乱了jQuery可排序处理和计算定位的方式,因此出现了奇怪的行为。
答案 1 :(得分:0)
我知道我有点晚了,但是继承人是另一个我觉得更容易的解决方案,只需添加以下css:
.ui-draggable {
z-index:9999;
}
答案 2 :(得分:-1)
我的猜测是因为你正在使用'list'标记。如果你尝试使用'divs'而不是你的可拖动项目我会下注,它会按预期工作。