Supprimer plusieurs Objets à la fois sur un fabric.js canvas en html5

Je travaille actuellement sur un html5 canvas projet qui utilise le fabric.js Cadre pour la toile interactions. Maintenant, je suis struggeling avec la suppression de plusieurs objets. Le code suivant ne semble pas suivre les objets sélectionnés, mais les pistes de tous les objets sur la toile.

var deleteSelectedObject = document.getElementById('delete-item');
deleteSelectedObject.onclick = function(){
    var curSelectedObjects = new Array();
    curSelectedObjects = canvas.getObjects(canvas.getActiveGroup);
    canvas.discardActiveGroup();
    for (var i = 0; i < curSelectedObjects.length; i++){
        canvas.setActiveObject(curSelectedObjects[i]);
        canvas.remove(canvas.getActiveObject());
    }
};

N'obtenez pas de mon échec.

  • Juste une remarque: n'utilisez pas de var curSelectedObjects = new Array(); nouveau Tableau, il suffit d'utiliser []. Surtout dans ce cas, où vous n'avez pas affaire à un tableau, mais une liste de noeud (!== la même chose)
  • Êtes-vous essayer de supprimer un groupe d'objets?
  • oui, thatÄs exactement ce que je suis en train de faire. Toutes les suggestions?
  • canvas.getActiveGroup().forEachObject(function(o){ canvas.remove(o) }); canvas.discardActiveGroup().renderAll();
InformationsquelleAutor John Mayer | 2012-08-06