Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在鼠标上方显示对象的边框(Fabricjs)_Javascript_Fabricjs - Fatal编程技术网

Javascript 在鼠标上方显示对象的边框(Fabricjs)

Javascript 在鼠标上方显示对象的边框(Fabricjs),javascript,fabricjs,Javascript,Fabricjs,我试图在鼠标上方显示一个对象的边界。我尝试使用fabric的“mouse:over”事件并手动选择对象 canvas.on('mouse:over', function(opts){ var selectedObj = opts.target; canvas.setActiveObject(opts.target); }); 但这种方法有一个问题。我选择一个对象,然后通过单击一些按钮(在画布外)尝试执行一些操作。单击按钮时,如果存在某个对象,则会选中该对象 那么,还有其他方

我试图在鼠标上方显示一个对象的边界。我尝试使用fabric的“mouse:over”事件并手动选择对象

canvas.on('mouse:over', function(opts){
    var selectedObj = opts.target;  
    canvas.setActiveObject(opts.target);
});
但这种方法有一个问题。我选择一个对象,然后通过单击一些按钮(在画布外)尝试执行一些操作。单击按钮时,如果存在某个对象,则会选中该对象


那么,还有其他方法可以在鼠标上方显示对象的边框吗?

这是我在项目中使用的技巧,以编程方式激活对象,当然还可以显示边框和控件

            //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();
在“mouse:out”事件中,您还可以禁用活动对象,以显示边框

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