//新图由小到大出现,旧图竖条百叶窗消失 /* wcon.data["title"] wcon.data["lastBuildDate"] wcon.data["item"][0]["title"] wcon.data["item"][0]["image"] */ import mx.transitions.*; import mx.transitions.easing.*; var db; var loopFunc; //@@@ var loopIdx; //@@@ var parent=_parent._parent._parent._parent._parent var scrWidth = parent.sys.stageWidth var scrHeight = parent.sys.stageHeight - 44 var idm = 0; //id manager var idx = 0; //index var root = this var duration = 3000; var intervalID; var twArr=[] var status="PLAY" function pause(){ status="PAUSE"; for(var i in twArr){ twArr[i].stop() } } function play(){ status="PLAY"; for(var i in twArr){ twArr[i].resume() } } function init(dat,func){ //@@@ db = dat loopFunc=func //@@@ this.createEmptyMovieClip("p_0",0) this.createEmptyMovieClip("p_1",1) p_0._x = p_1._x = scrWidth/2 p_0._y = p_1._y = scrHeight/2 intervalID = setInterval(root,"loop",duration) } function loop(){ if(status == "PAUSE") return null; clearInterval(intervalID) var p = this["p_"+idm] p.swapDepths(2) p.con.removeMovieClip() p.createEmptyMovieClip("con",0) p.con.createEmptyMovieClip("pic",0) var conListener:Object = new Object(); conListener.onLoadInit = function(target_mc:MovieClip) { if(target_mc._width>0){ target_mc._x = -target_mc._width/2 target_mc._y = -target_mc._height/2 if(++idm>1) idm=0 mtran(target_mc._parent) }else{ loop() } } conListener.onLoadError = function(target_mc, errorCode) { loop() } var conLoader:MovieClipLoader = new MovieClipLoader(); conLoader.addListener(conListener); conLoader.loadClip(db["item"][idx]["image"],p.con.pic); loopIdx=idx //@@@ if(++idx>db["item"].length-1) idx=0 } function mtran(target) { //var root = this; loopFunc(loopIdx); //@@@ var t var d = 2 var sx = target._width/scrWidth var sy = target._height/scrHeight var ts = 100 if(sx>1||sy>1){ ts = 100/(sx>sy?sx:sy) } //else{ ts = 100/(sx>sy?sx:sy) } //var ts = target._height/scrHeight //ts = 100/ts t = new Tween(target, "_xscale", Regular.easeInOut, 0, ts, d, true);twArr.push(t); t = new Tween(target, "_yscale", Regular.easeInOut, 0, ts, d, true);twArr.push(t); t.onMotionFinished = function() { twArr=[]; TransitionManager.start(root["p_"+idm].con, {type:Blinds, direction:Transition.OUT, duration:.5, easing:None.easeNone, numStrips:10, dimension:1}); intervalID = setInterval(root,"loop",duration) }; }