-1

我正在尝试在两个按钮上调用一个函数

nav1or2.navi1.navBtn1.addEventListener(MouseEvent.CLICK, goSmall);
nav4.navi4.navBtn4.addEventListener(MouseEvent.CLICK, goSmall);
function goSmall(event:MouseEvent):void 
{ 
gotoAndPlay(41);
}

第二个按钮nav4.navi4.navBtn4.addEventListener(MouseEvent.CLICK, goSmall);不起作用,我得到了这个 TypeError:

错误 #1009:无法访问空对象引用的属性或方法。

请帮忙。

4

3 回答 3

2

我解决了它,而不是使用这个nav1or2.navi1.navBtn1nav4.navi4.navBtn4 现在我正在使用它nav1or2.navi1nav4.navi4它在我的情况下工作,navBtn4 没有“addEventListener”,但我不确定为什么nav4.navi4.navBtn4 如果有人知道它不能使用这个,请告诉我我的文件的网址已更改:http ://sdrv.ms/1bo86qQ

于 2013-08-12T07:39:12.813 回答
0

我发现你的问题了!!!

修复代码如下:

nav1or2.navi1.navBtn1.addEventListener(MouseEvent.CLICK, goSmall);
nav4.navi4.navBtn1.addEventListener(MouseEvent.CLICK, goSmall);
function goSmall(event:MouseEvent):void 
{ 
    gotoAndPlay(41);
}

你的问题是:navi1 navi2 navi4 等等......都是同一个对象!

当您更改其中一个时,您将全部更改!

所以它们都包含“ navBtn1 ”而不是“ navBtn4

这就是为什么你得到错误 #1009 因为属性“navBtn4”真的不存在!!

于 2013-10-20T19:41:21.187 回答
0

这意味着 navBtn4 在您运行该代码时没有“addEventListener”方法。尝试在该行上使用带有断点的调试器并检查它是否已被初始化。

于 2013-08-09T13:36:28.273 回答