as3 如何让两个数组一一对应

如:有两个数组varbtn:Array=[btn1,btn2,btn3,btn4];vars:Array=["s1","s2","s3","s4"];如何让这两个数组一一... 如:有两个数组
var btn:Array=[btn1,btn2,btn3,btn4];
var s:Array=["s1","s2","s3","s4"];
如何让这两个数组一一对应,如何实现下面的效果呢。
点击btn1时,mc跳到s1;
点击btn2时,mc跳到s2;
一次类推。
展开
 我来答
百度网友f1375fd91
2013-05-30 · 超过15用户采纳过TA的回答
知道答主
回答量:27
采纳率:0%
帮助的人:21.4万
展开全部
利用下标啊,for循环遍历一下就行了。
for(var i:Int = 0;i<btn.length;++i)
{
btn[i].addEventListener(MouseEvent.CLICK,clickHandler);
}
/////////////////////////////第一种函数
function clickHandler(c:MouseEvent):void
{
var t:int = btn.indexOf(c.target)
//mc 跳到 s[t];
}
////////////////////////////第二种(如果按钮名字是btn1,btn2...)
function clickHandler(c:MouseEvent):void
{
//mc跳到s[int(c.target.name.slice(3)) - 1]
}
追问
谢谢啊 可惜我都已经采纳完了 百度要是能采纳两答案就好了
追答
没事,能帮到你就好。
宽带人为0
2013-05-30 · TA获得超过346个赞
知道小有建树答主
回答量:345
采纳率:0%
帮助的人:322万
展开全部
用一个侦听处理就行了,取按钮对应数组中的索引,再去取对应的String
以下代码手写的没经过调试,只说明一下意思:

btn1.addEventListener(MouseEvent.CLICK, onButtonClick);
btn2.addEventListener(MouseEvent.CLICK, onButtonClick);
....
....

function onButtonClick(event:MouseEvent):void
{
var button:Object = event.currentTarget;
var index:int = btn.indexOf(button);
var targetLabel:String = s[index];
mc.gotoAndPlay(targetLabel);

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

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式