在飞行中改变dragzone

时间:2017-04-24 03:43:57

标签: javascript interact.js

Interact.js库。

我有多个元素,每个元素都有自己的可交互实例。 如何在拖动时切换实例? 所以拖动将继续使用另一个元素。

任务听起来很奇怪,但很简单 - 我为小屏幕做了一个选择选择器 - 当用户点击一个元素并“开始拖动”时,它停留在原位,但是Y轴用于改变当前的“滚轮”选择,X轴(当delta很大时)将开始真正的拖动。但是对于新元素,之前没有点击过。

我需要的是在从“滚动”阶段切换到“真正拖动”阶段期间更改拖动源。

这样的东西
event.interaction.stop();
event.interaction.start({ name: 'drag' }, anotherInteractable, anotherElement);

不要工作。

感谢任何想法。

P.S。我可以为每个处理所有可拖动元素的应用程序创建单个可交互实例,但问题将保持几乎相同 - 即时更改交互元素。

1 个答案:

答案 0 :(得分:0)

似乎我必须在没有相互作用的情况下进行“滚动”阶段。 只有onmove监听器按下控制按钮状态。

当用户做出选择后开始“拖动”阶段时, 真正的交互将从已定义的对象开始。