2010-11-05 19 views
4

J'ai essayé d'imbriquer des décors dans des décors mais en vain.Nidification des décors de Raphaël dans Raphael décors pour la bibliothèque javascript Raphael

Ce concept vient de, photoshop, où vous pouvez regrouper des éléments dans un dossier/ensemble et les imbriquer dans un autre dossier/ensemble. J'essaie de combiner facilement deux ensembles ou plus en un seul, donc je n'ai pas besoin de tout démonter manuellement pour intégrer à nouveau le code.

Cette étape doit faire place à un contrôle de comportement collectif de l'ensemble, par ex. survol de la souris, clics, traductions et transformations.

Quelqu'un at-il l'expérience et trouvé une solution de rechange à ce problème s'il vous plaît? Toute aide pour résoudre ce problème est appréciée.

Pour élaborer, voici quelques exemples de code de ce que je artificiel essaie de faire:

var r = Raphael("holder"); 
r.height = 400 
r.width = 300 

var buttons = r.set(); 
var target_objects = r.set(); 

buttons.push(
    r.rect(0,0,r.width/10,r.height/10).attr({fill:"#000"}) 
); 

target_objects.push(
    r.rect(50,50,r.width/5,r.height/5).attr({fill:"#0F0"}) 
); 

var super_set = r.set(); 

# Trying to combine sets. Note: this of course doesn't work 
super_set.push(buttons,target_objects); 

super_set.mouseover(function(){ 
    alert(); 
}); 
+0

Que voulez-vous dire? L'ensemble pourrait être imbriqué dans un autre ensemble sans problèmes. Afficher le code qui ne fonctionne pas –

+0

J'ai regardé dans la page de référence de Raphael, ainsi que parcouru le web pour des problèmes similaires pour une solution de contournement. Personne ne semble avoir de réponse, ou je ne suis pas doué pour chercher des références. J'ai modifié la question pour inclure un exemple de code sur ce que j'essaie de faire. Merci. – VKen

+0

Même si votre code fonctionnait, vous ne créeriez pas de jeux imbriqués. Voulez-vous des ensembles imbriqués, ou voulez-vous scinder deux ensembles en un seul? –

Répondre

6

Comme Dmitry souligne, ensembles peuvent être poussés dans d'autres jeux, de sorte que votre code devrait fonctionner. Try it out with this jsFiddle..

+1

Merci, c'est exactement ce dont j'avais besoin! – VKen

+0

"Les éléments ne peuvent pas être d'autres ensembles" Non, ils peuvent être d'autres ensembles. C'est tout le point! –

+0

@Dmitry - Vous avez raison. Je pensais l'avoir déjà essayé, ne le devinez pas. Je souhaite que la documentation fasse référence à cela. –