【发布时间】:2012-01-27 06:29:10
【问题描述】:
我正在尝试创建幻灯片样式的演示文稿,其中每张幻灯片/页面都是一个影片剪辑,它们通过滑动动画进行过渡。 我遇到的问题是我不希望舞台上的所有影片剪辑都同时出现以防止滞后问题,这是我想要实现的一个示例:
- 当前页面为页面 A,点击下一步按钮
- 页面 B 使用 addChild 放置在舞台上(但放置在视野之外)
- 页面 A 滑出可见舞台
- 页面 B 滑入可见阶段
- 页面 A 使用 removeChild 从阶段中删除 - 这是我遇到问题的地方。
//greensock stuff
import com.greensock.*;
import com.greensock.easing.*;
//buttons that navigate to next and previous slides
prevBtn.addEventListener(MouseEvent.CLICK,prevClicked,false,0,true);
nextBtn.addEventListener(MouseEvent.CLICK,nextClicked,false,0,true);
//setting up array of all the pages
var pageArray:Array = [page1, page2, page3, page4, page5];
var currentArray:Number = 0;
//defining the first page and placing it on the stage
var currentPage:MovieClip = new pageArray[currentArray];
addChild(currentPage);
function nextClicked(event:MouseEvent):void{
//check to ensure it is not the last page
if (currentArray < pageArray.length - 1){
//define the current slide as oldPage
var oldPage:MovieClip = new pageArray[currentArray];
currentArray++;
//define the next slide as currentPage and place on stage
var currentPage:MovieClip = new pageArray[currentArray];
addChild(currentPage);
currentPage.x = 1024;
TweenMax.to(currentPage, 1, {x:0});
TweenMax.to(oldPage, 1, {x:-1024,onComplete:removeChild,onCompleteParams:[oldPage]});
}
}
function prevClicked(event:MouseEvent):void{
//check to ensure it is not the first page
if (currentArray > 0){
//define the current slide as oldPage
var oldPage:MovieClip = new pageArray[currentArray];
currentArray--;
//define the next slide as currentPage and place on stage
var currentPage:MovieClip = new pageArray[currentArray];
addChild(currentPage);
currentPage.x = -1024;
TweenMax.to(currentPage, 1, {x:0});
TweenMax.to(oldPage, 1, {x:1024,onComplete:removeChild,onCompleteParams:[oldPage]}); }
}
【问题讨论】:
标签: flash actionscript-3 contains removechild gsap