悬停元素,动作到闪存中的另一个元素

时间:2014-10-24 08:48:02

标签: actionscript-3 flash actionscript

我正在构建一个flash横幅,我在所有内容上添加了一个大按钮。 当我将鼠标悬停在大按钮上时,我希望WatchBtn能够转到

this.mainBt.addEventListener(MouseEvent.MOUSE_OVER, onOver, false, 0, true);
function onOver(e:MouseEvent):void{
    watchBtn.gotoAndStop(2);
}

但我一直在回答这个错误:

TypeError: Error #1009: Cannot access a property or method of a null object reference.
at swift_fla::MainTimeline/onOver()

3 个答案:

答案 0 :(得分:0)

错误1009通常意味着您已尝试对Flash文件中的变量执行某些操作,但实际上不存在/不包含值。因此,与swift_fla函数相关的onOver()中缺少某些内容。

您最好的选择是使用trace();进行跟踪和调试。

this.没有必要。

mainBt.addEventListener(MouseEvent.MOUSE_OVER, onOver, false, 0, true);
function onOver(e:MouseEvent):void{
    watchBtn.gotoAndStop(2);
}

答案 1 :(得分:0)

可能会发生此错误,因为您的watchBtn变量为null,因为它未定义:

var watchBtn:WatchButton;
trace(watchBtn); // null

所以没有propertymethod(如gotoAndStop)可以应用于watchBtn

watchBtn.gotoAndStop(2);

它将与:

相同
null.method;

这是不可能的。

结果你应该写下这样的东西:

var watchBtn:WatchButton = new WatchButton();
this.addChild(watchBtn);

答案 2 :(得分:0)

您的watchBtn变量返回null。

查看你宣布它的位置,它可能超出了范围!