2010-12-09 5 views
11

J'essaie de commander des objets de Raphaël. Je n'ai pas la possibilité de décider quand les objets sont créés, mais je voudrais faire apparaître un groupe d'objets derrière un groupe d'autres objets après qu'ils ont été créés. Quelqu'un peut-il m'aider à faire cela?Raphael commander des objets

Merci.

Répondre

12

groupe vous articles dans deux sets et positionner les ensembles par rapport à l'autre avec insertBefore ou insertAfter:

var front = paper.set(); 
front.push(front1, front2); 

var back = paper.set(); 
back.push(back1, back2); 

front.insertBefore(back); 

Aussi, si vous avez vos articles dans des tableaux que vous pouvez utiliser apply pour des raisons pratiques:

var frontItems = [front1, front2]; 
front.push.apply(null, frontItems); 
3

Vous pouvez utiliser toBack. http://raphaeljs.com/reference.html#toBack

Il placera un objet derrière les autres objets indépendamment du moment où vous l'avez créé.

+1

Malheureusement, cela ne fonctionnera pas pour moi. Il y a des objets de fond dont tout doit rester en face, et j'essaye d'arranger mes objets de premier plan. Il y a trop d'objets d'arrière-plan pour rendre l'utilisation répétée de toBack possible. – So8res