在鼠标悬停(Fabricjs)上显示对象的边框

时间:2015-03-10 07:31:56

标签: javascript fabricjs

我正在尝试在鼠标悬停时显示对象的边框。我试图使用'mouse:over'结构事件并手动选择对象。

canvas.on('mouse:over', function(opts){
    var selectedObj = opts.target;  
    canvas.setActiveObject(opts.target);
});

但这种方法存在一个问题。我选择一个对象,然后通过单击某些按钮(画布外部)尝试执行某些操作。在点击按钮的过程中,如果有某个对象,那么这些对象就会被选中。

那么在鼠标悬停时显示对象边框的其他方法是什么?

2 个答案:

答案 0 :(得分:0)

这是我在我的项目上做的伎俩,以编程方式激活一个对象,当然还有边框和控件的显示。

            //your object here should be opts.target
            //you set active property to true
              canvas.item(canvas._objects.length-1).set('active',true);
              canvas._activeObject = null;
           //again here you put opts.target
              canvas.setActiveObject(canvas._objects[canvas._objects.length-1]);
           //this helps to refresh
              canvas.renderAll();

and on' mouse:out'事件你也可以禁用活动对象,以显示边框。

答案 1 :(得分:0)

canvas.on('mouse:over', function(opts) {
  var selectedObj = opts.target;
  canvas.setActiveObject(opts.target);
canvas.renderAll();
});