最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Fabric JS Select Object by ID Programmatically - Stack Overflow

programmeradmin2浏览0评论

In Fabric JS I need to select object by given object Name/ID "Circle"

var onCircle = function () {
    canvas.add(new fabric.Circle({ id: 'Circle', radius: 30, fill: '#f55', top: 150, left: 150 }));
}

I also know the object can able to select by ItemID:

var SelectObject = function (ObjectName) 
{
    canvas.setActiveObject(canvas.item(0));
}

I need something like:

var SelectObject = function (ObjectName) 
{
    canvas.setActiveObject('my object name');
}

In Fabric JS I need to select object by given object Name/ID "Circle"

var onCircle = function () {
    canvas.add(new fabric.Circle({ id: 'Circle', radius: 30, fill: '#f55', top: 150, left: 150 }));
}

I also know the object can able to select by ItemID:

var SelectObject = function (ObjectName) 
{
    canvas.setActiveObject(canvas.item(0));
}

I need something like:

var SelectObject = function (ObjectName) 
{
    canvas.setActiveObject('my object name');
}
Share Improve this question edited Jan 22, 2019 at 11:30 Cœur 38.7k26 gold badges202 silver badges277 bronze badges asked Oct 22, 2016 at 11:29 SurendharSurendhar 3272 gold badges3 silver badges12 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 17

you just need to write a function to loop though each object and set it as active when you find it. Below I check id but you can change it to check any property on the object you want to set.

var SelectObject = function (ObjectName) {
    canvas.getObjects().forEach(function(o) {
        if(o.id === ObjectName) {
            canvas.setActiveObject(o);
        }
    })
}
发布评论

评论列表(0)

  1. 暂无评论