我们已将我们的应用转换为使用JQuery UI进行拖放。 (我没有参与其中,也没有涉及原始代码。我只是想解决这个问题。)我们正在拖动新的"列"进入一张桌子。我们将drop-target设置为整个表,而不是单个行/单元。在我开始进行更改以删除其中一个放置目标之前,event.originalEvent.target始终为我们提供了用户放置的表中的单元格。我们使用有关该单元格的信息来确定用户实际想要删除新列的位置。
如上所述,当我尝试删除其中一个放置目标时,问题就开始了。每当我摆脱它(以及它的所有引用,它显示它并在拖放操作期间隐藏它),然后在我的Drop函数中,event.originalEvent.target元素(mouseup事件的)不再是表中用户放开鼠标的列。相反,它是被拖动的元素。
我不知道为什么这个额外放置目标的存在与否会改变鼠标向上事件看作其目标的元素。它似乎与此项目的可见性有关,它会动态显示和隐藏。如果我改变了这些东西,我会得到拖动的项目,而不是它被拖动的东西。我唯一一次得到被拖动项目下的内容就是这个"额外的" drop target存在,最初是隐藏的,在拖动过程中显示,然后在drop上再次隐藏。
你知道我怎么能(a)得到drop-event给我什么?在拖动的项目下,或者(b)获得相对于实际放置目标的鼠标向上的正确坐标(表格),我可以用来查找相对于表格的项目?或者我是否真的必须将表中的所有单元格放入drop-targets?我真的只想从我的页面中删除这一个div。