2

我正在使用 HammerJS 为桌面和移动设备抽象拖动、缩放和旋转。我所缺少的只是下降。如何将一个元素定义为一个放置目标,当另一个元素被拖动或放置到它上面时会引发一个事件?像 jQueryUI 的droppable之类的东西可以与 HammerJS 一起使用吗?

谢谢。

4

2 回答 2

2

今天刚刚解决了。

在放置对象时,设置一个全局“找我”标志。然后 setTimeout() 很快(比如 30 毫秒)将其设置回 false。隐藏(并移动)放置的对象,在短时间内将其放回,允许 onMouseOver 和 onMouseOut 事件在放置目标对象上触发。

观看“寻找我”标志的这些事件。

我还没有真正尝试过。

(我的第一篇文章。)

于 2013-09-24T22:18:56.217 回答
2

检测放置目标元素的唯一一种快速方法是使用

document.elementFromPoint

像这样:

function dragEnd($event){
    var targetEl = document.elementFromPoint($event.gesture.center.pageX, $event.gesture.center.pageX);

    your code
}
于 2014-02-18T08:21:00.637 回答