【发布时间】:2022-02-04 22:34:29
【问题描述】:
在某些条件下,在我的 mouse:down 事件侦听器中,我想停用用户刚刚使用 mouse:down 激活的对象。换句话说,当用户在某些情况下尝试拖动对象时,我想执行一些代码并阻止拖动。
简单调用
fabric.deactivateAll();
将取消选择对象(对象控件消失),但拖动功能将不会中断。
我尝试过:
fabric.fire('mouse:up');
模拟用户放开对象并触发但对拖动没有影响。
如何以编程方式禁用拖动?另外,如果两种方法不同,我将如何在另一个对象上激活它?
上下文:我有一组用户可以正常操作的对象。但是,该组中有一个特殊对象,当用户尝试通过单击该特殊对象进行拖动时,应将其从组中删除,添加到画布中,并且应将拖动应用于特殊对象而不是整个组。取消选择特殊对象后,它会再次添加到组中。除了拖动功能从整个组转移到特殊对象的部分之外,我一切正常。
【问题讨论】:
标签: javascript fabricjs