as3 totalFrames返回1

时间:2016-04-17 20:45:53

标签: actionscript-3 flash frames

我正在尝试加载一个动画 我想知道动画的结束并在循环中避免它。

var myLoader:Loader = new Loader( );
var myLoaderReq:URLRequest = new URLRequest("anim.swf");
myLoader.load(myLoaderReq);
addEventListener(Event.ENTER_FRAME , enterFrameListener );
addChild(myLoader);

myLoader.x = 10;
myLoader.y = 20;


function enterFrameListener(event:Event):void
{
  var mc:MovieClip = event.currentTarget as MovieClip;

  trace(mc.currentFrame);
  if( mc.currentFrame == mc.totalFrames )
  {
      mc.removeEventListener(Event.ENTER_FRAME , enterFrameListener );
      trace("end of movie reached");
  }
}

for test我使用从http://www.leconcombre.com/movies/movies1us.html下载的swf

任何想法如何做到这一点?

日Thnx

1 个答案:

答案 0 :(得分:0)

您正在使用的currentTarget是指

var mc:MovieClip = event.currentTarget as MovieClip;

哪个应该是你的MainTimeline,如果你再添加一个帧,那么应该返回2个totalFrames。

作为BadFeelingAboutThis说,只需替换:

var mc:MovieClip = myLoader.content as MovieClip;

通过

div
{
    font-size: 3.2vw;
}

您还必须确认您正在尝试操纵anim.swf的MainTimeline。