在 EaselJS 中从舞台删除具有特定名称的形状

Remove Shapes With Specific Name form Stage in EaselJS

如果我循环将形状添加到舞台,如下所示:

fooShape = new createjs.Shape().set({name:"newShapes"});

使用函数删除名称为 "newShapes" 的所有形状的最简单方法是什么?

我试过 stage.removeChild(fooShape[i]); 之类的东西,但我会得到 "not defined"。

removeChild method只显示对象作为参数。要删除具有特定名称的所有子项,您必须遍历这些子项,并删除所有符合条件的子项:

for (var i=container.numChildren-1; i>=0; i--) {
    var child = container.getChildAt(i)
    if (child.name == "newShapes") {
        container.removeChild(child);
    }
}

请注意,此示例反向循环子项,因为删除项目会导致索引在循环期间发生变化。

希望对您有所帮助。