我试图在每次特定织物对象“取消选择”时执行一些代码。是否有任何取消选择活动可以处理?我已经有了一个函数,用于何时通过所选事件选择对象,但尚未找到有关取消选定对象的任何文档。在画布级别,我有选择:清除和选择:创建事件,但没有选择。取消选择fabric.js对象事件
干杯, 贡萨洛
我试图在每次特定织物对象“取消选择”时执行一些代码。是否有任何取消选择活动可以处理?我已经有了一个函数,用于何时通过所选事件选择对象,但尚未找到有关取消选定对象的任何文档。在画布级别,我有选择:清除和选择:创建事件,但没有选择。取消选择fabric.js对象事件
干杯, 贡萨洛
使用before:selection:cleared
事件并获得活动对象或组。之后,您可以检查它是否与您的特定结构对象相对应。
canvas.on('before:selection:cleared', function() {
var clearedObject;
if(typeof(canvas.getActiveObject()) !== 'undefined') {
clearedObject = canvas.getActiveObject();
}
else {
clearedObject = canvas.getActiveGroup();
}
//do stuff with the deselected element if it is the specific one you want.
});
只是为了让大家都知道的Fabric.js最新版本包括一个deselected
事件为Object class。您现在唯一需要做的事情是:
var aFabricObject = <create your fabric object>
aFabricObject.on('deselected', function (options) {
// your code here
});
这也是在文档中提到的,但不知何故,当对象被取消选择时它不会触发! – theHarsh
第3行有一个小错字,右括号应该在.getActiveObject()调用之后。 另外,在最后一行有一个缺失的“)”。 – Moritur