2013-05-06 54 views
1

我在一帧中创建了一个动作,用于2个目的: 1.添加clickTag 2.停止5秒后的动画。如何在X秒后停止Flash动画

clickTAG是工作,但没有5秒后停止,我不明白为什么

on (release) { 
if (_root.clickTAG.substr(0,5) == "http:") { 
getURL(_root.clickTAG, "_blank"); 
} 
}; 
var myTimer:Timer = new Timer(5000, 1); 
    myTimer.start(); 
    myTimer.addEventListener(TimerEvent.TIMER_COMPLETE, function(e:TimerEvent){ 
     stop(); 
    }); 

有什么建议?

回答

3

呃..提供的代码有太多错误,我不知道从哪里开始。首先,你是as2混合as2

0123xxmovieclip只允许在actionscript 2中,而定时器类是as3。

另一个巨大的混淆是,你正在将on(...)处理程序放在电影本身(电影被选中,代码放在它上面) - 这是可以的。什么是不好的是,你不能把常规的代码 - 意思是定时器 - 放在动画片段上。这些东西必须放在一个框架上(点击一个框架然后编辑动作)。即使如此,计时器也无法工作,因为它是actionscrtip3类。

考虑到您的“clicktag”工作的事实,这意味着您可能正在运行as2。

正如我已经说过的,在as2中没有本地计时器类。你必须使用setTimeout。请注意,setTimeout与大多数常规动作一样,必须放在一个框架上,而不是电影剪辑片段。和示例的setTimeout的:

setTimeout(function(){ 
    stop(); 
},5000); //5000 is amount of miliseconds 

...顺便说一下......谷歌广告应该在30秒,而不是5秒后停止。

+0

谢谢,的确,我是在混合as2和as3,现在很清楚。 – fabco63 2013-05-06 16:13:04