Flash指定帧停留异常:按钮触发后始终跳转至帧3
解决Flash中gotoAndPlay(2)总是跳转到帧3的问题
我一眼就看出问题出在哪了!咱们先理清楚你的代码逻辑和Flash播放头的工作方式:
你当前的按钮代码是这样的:
on(release){ myNum=parseInt(textbox1.text); if (myNum == 2) { gotoAndPlay(2); } stop(); }
问题的核心点有两个:
- 你用了
gotoAndPlay(2),这个命令是让播放头跳到帧2开始播放,如果帧2本身没有stop()命令,Flash的播放头会自动往下走,直接跳到帧3,根本不会停在帧2。 - 代码最后那个
stop()根本没起到你想要的作用——它是停止当前按钮所在的帧(比如你的按钮可能放在帧1?),而不是停止在刚跳过去的帧2上。
给你两个简单的解决方案,选哪个看你的需求:
方案1:给帧2加个stop()命令
这是最直接的办法:
- 打开时间轴,选中帧2的关键帧
- 打开动作面板,输入
stop();
这样当播放头跳到帧2后,就会停在那里,不会自动播放到帧3了。
方案2:把gotoAndPlay改成gotoAndStop
如果你本来就只想停在帧2而不是播放它,那直接用gotoAndStop()更准确,修改后的代码如下:
on(release){ myNum=parseInt(textbox1.text); if (myNum == 2) { gotoAndStop(2); // 直接跳转到帧2并停止 } // 要是需要支持其他数值,比如输入3跳帧3,可以补充else if else if (myNum == 3) { gotoAndStop(3); } }
这样修改后,输入2就会稳稳停在帧2,不会再跑到帧3啦!
内容的提问来源于stack exchange,提问作者user3099225
相关产品推荐
相关产品推荐

