加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

gotoAndPlay的研究

发布时间:2020-12-15 06:23:35 所属栏目:百科 来源:网络整理
导读:前段时间看到不少按钮上用gotoAndPlay的话题,很简单,却往往容易混淆 现在谈谈我的认识,欢迎大家讨论 1.gotoAndPlay的 基本语法 ? ?gotoAndPlay(scene,frame)? ?? ?? ? //场景跳转 ? ?MovieClip.gotoAndPlay(frame)? ?? ?//MovieClip跳到指定帧 【注】:这个f
前段时间看到不少按钮上用gotoAndPlay的话题,很简单,却往往容易混淆
现在谈谈我的认识,欢迎大家讨论

1.gotoAndPlay的基本语法

? ?gotoAndPlay(scene,frame)? ?? ?? ? //场景跳转
? ?MovieClip.gotoAndPlay(frame)? ?? ?//MovieClip跳到指定帧
【注】:这个frame参数可以是帧号码,也可以是帧标签,如果是帧标签,需要加引号
???不正确的语法:?
? ?_root.gotoAndPlay(scene,frame)

2.如果一个按钮上的action是这样的
  1. on(release){
  2. ? ?? ?? ?gotoAndPlay(10);
  3. }
复制代码

如果这个对象是个mc,则这个mc跳到第10帧播放;
如果是按钮,则当前场景跳到第10帧播放
如果要保证场景跳到第10帧播放,应该在gotoAndPlay(10)前加上 _root.

3.如何通过按钮实现 场景跳转

(1).? 把按钮的代码写到主场景
  1. _root.btn_jump.onRelease=function(){
  2. ? ?? ?? ? gotoAndPlay(scene,frame);
  3. 复制代码

(2). 使用帧标签(lable),action直接放在按钮上
  1. on(release) {
  2. ? ?? ?? ? _root.gotoAndPlay("sc2_start");? ???//sc2_start是场景2中的一个帧标签
  3. 复制代码
这里不能漏掉_root.,原因见第2点
(3). 使用绝对帧数
? ???假设场景1有30帧,那么场景2中的第一帧的绝对帧数就是31,而他相对于场景2的帧数是1
? ???_root.gotoAndPlay(31);? ?//跳到第31帧(绝对帧数)
示例:
[f w=402 h=201]http://my.6to23.com/qhwa/temp/gotoAndPlay.swf[/f]
源文件:??http://my.6to23.com/qhwa/temp/gotoandplay.fla

4. gotoAndPlay(1)和_root.gotoAndPlay(1)的区别

前者使用的是相对帧数,后者使用的是绝对帧数
更具体点,第一句是跳到当前场景的第一帧,第二句跳到场景1的第一帧
另外补一句,_currentframe是绝对帧数
知道了这一点,就可以实现跳转到当前场景的第一帧,把以下action放到场景中
  1. ? ???gotoAndPlay(1);
  2. 复制代码
以上论点在Flash MX下试验通过

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读