2009-11-07 3 views
0

Я нашел учебное пособие по созданию стопки фотографий во флеш-памяти с использованием AS3 (http://designreviver.com/tutorials/create-an-interactive-stack-of-photos/).Стек фотографий AS3 - застрял на somthing simple

Я пытался сделать динамическую версию XML стеки фото и у меня есть проблема (очевидно :)

У меня есть класс с именем Polaroid, и им с помощью петли, чтобы добавить несколько экземпляров на этап следующим образом:

function processXML(e:Event):void { 
    var myXML:XML=new XML(e.target.data); 

    my_images=myXML.IMAGE; 
    my_total=my_images.length(); 
    photoCount=my_total; 

    for (var i:Number = 1; i <= my_total; i++) { 
     imageNo=i; 
     this.addChild(new polaroid ).name="photo"+imageNo; 
     this.getChildByName("photo"+imageNo).addEventListener(MouseEvent.MOUSE_DOWN, photoSlideOut); 
     this.getChildByName("photo"+imageNo).rotation = Math.floor(Math.random()*(rotationRange*2))-rotationRange; 
    } 
} 

затем я использую две функций слайд фото, и изменить свой индекс так, что он идет за все остальные случаи Polaroid.

function photoSlideOut(e:Event):void { 
    e.target.parent.setChildIndex(e.target, e.target.parent.numChildren - 1); 
    Tweener.addTween(e.target, {x: photoDestX, time: speed, transition: easeType, onComplete:photoSlideIn, onCompleteParams:[e.target]}); 
    Tweener.addTween(e.target, {rotation: Math.floor(Math.random()*(rotationRange*2))-rotationRange, time: speed*2, transition: easeType}); 
} 
function photoSlideIn(p:MovieClip):void { 
    p.parent.setChildIndex(p, 0); 
    Tweener.addTween(p, {x: photoOriginX, time: speed, transition: easeType}); 
} 

photoSlideOut, кажется, работает хорошо, и твин в photoslidein работает - я не могу показаться, чтобы изменить индекс нижестоящего экземпляра Polaroid, которая была нажата, хотя.

У кого-нибудь есть идея, где я здесь не так?

Любая помощь будет высоко оценена.

ответ

0

Попробуйте currentTarget вместо цели.

Смежные вопросы