2
我試圖刪除包含組(包含形狀)或只是形狀(線,矩形,圓等)作爲其元素的數組的元素。我的作用是類似下面的東西:在Kineticjs中刪除數組中的組
deleteSelectedShape = function() {
var i,
shapeObj,
selectedObjects = currentContext.getSelectedObjects(),
shapeLayer = currentContext.getShapeLayer();
if (selectedObjects && selectedObjects.length > 0) {
for (i = 0; i < selectedObjects.length; i += 1) {
shapeObj = selectedObjects[i];
// shapeObj.remove(); results same error as mentioned at last
if (shapeObj.nodeType === "Group") {
shapeObj.destroyChildren();
}
else{
shapeObj.destroy();
}
}
}
selectedObjects = [];
shapeLayer.draw();
};
我想這也
if (shapeObj.nodeType === "Group") {
var childs = [];
childs = shapeObj.getChildren();
for (var j = 0; j < childs.length; j++) {
childs[j].remove();
}
}
else{
shapeObj.remove();
}
}
}
這裏單個形狀越來越刪除,但如果在陣列組,它給錯誤:
TypeError: this.getParent(...) is undefined in Kineticjs file
請建議我適當的想法。謝謝 !!!
刪除任何號碼沒有任何問題。的選定形狀。但是,如果數組中有一個組,只有這樣它纔會拋出上面的錯誤。所以我想知道如何從數組中刪除該組以及其他形狀?循環不是問題。謝謝 !!! – ashokpd
我也試過你的代碼。但它又是一樣的錯誤消息! – ashokpd