jQueryUI-拖放问题-拖动的元素位于其他DOM元素之后

jQueryUI - Drag and Drop issue - dragged element goes behind other DOM elements

本文关键字:元素 其他 之后 DOM 于其他 问题 拖放 拖动 jQueryUI-      更新时间:2023-09-26

我正在尝试在2个div的之间实现拖放

请参考下面我的小提琴:http://jsfiddle.net/sandeepkram/SAUCa/

此布局是我的应用程序的副本。在fiddle中,您可以看到,如果您在第一个div(左侧)中拖动元素,它将永远在该div中移动——尽管如果您只是移动鼠标将其拖放到右侧div,它确实有效。

这里的问题是左侧div中元素的无限滚动/拖动。我不知道这里有什么问题-

在我的应用程序中,我遇到了另一个问题,当我将一个项目从左侧div拖动出来时,它会消失,尽管我可以将光标放在右侧div上,并且拖放操作似乎正确。

需要帮助来了解拖动的元素消失的原因。

我已经在stackoverflow和网络上查找了所有与此相关的问题和资源,可排序文件等,但没有用。

我也尝试过使用"堆栈"选项,但没有使用

$.each($("ul#secondaryKPIList ul > li"), function (index, tListItem) {
        $(tListItem).addClass("SecondaryKPIDraggable");
        $(tListItem).draggable({
        revert : 'invalid',
        stack: '.SecondaryKPIDraggable'
        });
    });

要解决视觉问题,只需删除溢出更改

overflow-y: auto;
overflow-x: hidden;

在.KpisListItems上,将其设置为以下小提琴:http://jsfiddle.net/GEWLs/2

这些规则扰乱了jQuery可排序处理和计算定位的方式,从而导致了奇怪的行为。

我知道我有点迟到了,但这里有另一个我觉得更容易的解决方案,只需添加以下css:

.ui-draggable { z-index:9999; }

9999可能有些过头了。

我猜这是因为您使用了'list'标记。如果你试着用"divs"来代替你的可拖动项目,我敢打赌它会正常工作。