2010-12-09 7 views
11

Ich versuche Raphael Objekte zu bestellen. Ich habe nicht die Möglichkeit zu entscheiden, wann die Objekte erstellt werden, aber ich möchte eine Gruppe von Objekten hinter einer Gruppe anderer Objekte erscheinen lassen, nachdem sie erstellt wurden. Kann mir jemand dabei helfen?Raphael Bestellung Objekte

Danke.

Antwort

12

Gruppe Sie Elemente in zwei sets und positionieren die Sätze relativ zueinander mit insertBefore oder insertAfter:

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

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

front.insertBefore(back); 

Auch wenn Sie Ihre Einzelteile in Arrays haben Sie apply für Bequemlichkeit verwenden können:

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

Sie können toBack verwenden. http://raphaeljs.com/reference.html#toBack

Es wird ein Objekt hinter den anderen Objekten platziert, unabhängig davon, wann Sie es erstellt haben.

+1

Leider funktioniert das nicht für mich. Es gibt einige Hintergrundobjekte, vor denen alles stehen muss, und ich versuche, meine Vordergrundobjekte anzuordnen. Es gibt zu viele Hintergrundobjekte, um toBack wiederholt zu verwenden. – So8res