4

我面临一个与这个线程几乎相同的问题:

jQuery droppable - 在拖动期间接收事件(不仅仅是在初始拖动时)

唯一的区别是我需要知道我结束的元素,它不是“可放置”元素。它只是我的 droppable 内部的一个元素。

因此,如果我有一个具有 3 个子 DIV 的父 DIV(即 droppable),当我将我的项目拖到 3 个子 DIV 上时,我想知道当被丢弃时,该项目是否应该被拖放到一个之上或之下的子元素。

与上述帖子中存在相同的问题(鼠标悬停等,事件未在可放置 div 的子元素上触发)。

想法?

4

1 回答 1

0

您可以获得鼠标 X 和 Y 坐标或物品在掉落时的偏移 X 和 Y - 加上它的高度和宽度等,因此您可以计算对象的边界并获得准确的掉落位置。

$(this).offset().top / $(this).offset().left

$(document).mousemove(function(event) {
    currentMousePos.x = event..pageX;
    currentMousePos.y = event.pageY;
});

然后遍历位于下方的对象并将它们的坐标/边界与您的对象进行比较。如果这不是一个简单的调用,你可以有一些逻辑来解决上面的问题等等。

于 2013-09-25T14:24:09.580 回答