J'essaie d'utiliser Raphael.js pour créer dynamiquement des objets. .: par exemple Raphael JS Free Transformer sur l'objet sélectionné
var paper = Raphael("canvas");
var elements = [];
elements.push(paper.rect(20,30,100,12).attr({fill:"orange"}));
elements.push(paper.path("m200,200l280,200l290,290z").attr({fill: "rgb(213,111,5)"}));
elements.push(paper.ellipse(340,100,90,40).attr({fill:"hsb(0.5,0.9,0.9)"}));
Je veux ensuite utiliser Free Transform sur toutes les formes, mais cacher la zone de délimitation et poignées à moins qu'une forme individuelle est cliqué. Jusqu'à présent, j'ai bouclé toutes les formes du tableau dans le tableau, appliqué Transformation et cachées les poignées:
for(var i in elements) {
var ft = paper.freeTransform(elements[i],{draw:['bbox']})
ft.hideHandles();
}
Mais je me bats pour ajouter un gestionnaire d'événements à chaque objet qui montrera les poignées sur la forme qui a été cliquée, et cachez-la sur les autres.
Je serais extrêmement reconnaissant pour tout conseil!
pouvez-vous créer un jsfiddle avec quelques exemples de code? – Neil
Qu'est-ce qui vous pose problème, ajouter le gestionnaire d'événements ou coder son contenu pour faire ce dont vous avez besoin? Le gestionnaire recevra l'objet cliqué en tant que paramètre. De là, vous devriez être en mesure de cacher la bbox sur tout, sauf celui-ci. –