flash as3.0提示说无法访问空对象引用的属性或方法。 at _2_fla::MainTimeline/frame1()

importflash.display.MovieClip;button1.addEventListener(MouseEvent.CLICK,get);button2.... import flash.display.MovieClip;
button1.addEventListener(MouseEvent.CLICK,get);
button2.addEventListener(MouseEvent.CLICK,get);
button3.addEventListener(MouseEvent.CLICK,get);
button4.addEventListener(MouseEvent.CLICK,get);
button5.addEventListener(MouseEvent.CLICK,get);
button6.addEventListener(MouseEvent.CLICK,get);
function get(e:MouseEvent):void
{
switch (e.target)
{
case button1 :
gotoAndPlay(2);
break;
case button2 :
gotoAndPlay(3);
break;
case button3 :
gotoAndPlay(4);
break;
case button4 :
gotoAndPlay(5);
break;
case button5 :
gotoAndPlay(6);
break;
case button6 :
gotoAndPlay(7);
break;
}

}
我就是想做一个点击不同按钮跳转到不同帧的 可以这么写吗
展开
 我来答
瘾晴败2822
2014-03-21 · TA获得超过216个赞
知道小有建树答主
回答量:553
采纳率:66%
帮助的人:619万
展开全部
首先把get函数改一下。如改成getName,因为get是AS中的关建字
接下来要改的是e.target,改成e.target.name
最后要改的是 case button1:改成 case "button1" : 加上引号,其它的同理都加上引号
追问
谢谢啊   非常感谢 一会儿我试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-03-21
展开全部

你的代码完全可以精简为

for(var i:uint=1;i<7;i++){
this["button" + i].mouseChildren = false;
}

addEventListener(MouseEvent.CLICK, onClick_func);

function onClick_func(_evt:MouseEvent):void{
var mc:MovieClip = _evt.target as MovieClip;
if(!mc) return;
var _nArr:Array = mc.name.match(/^button(\d+)$/i)
if(_nArr){
gotoAndPlay(uint(_nArr[1]));
}
}


button是影片剪辑 且名字是 buttonN (N为数字)

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式