你可以在不同的页面上使键盘事件不同吗?

时间:2012-01-25 11:25:53

标签: actionscript-3 keyboard frame addeventlistener stage

嘿,有没有办法让某些键在一个页面上做一件事,然后在另一页上做不同的事情,因为我使用

但是在下一帧我不能再使用空格键做另一项任务了? 任何帮助将不胜感激

stop();
stage.addEventListener(KeyboardEvent.KEY_DOWN, myKeyDownn);
function myKeyDownn(e:KeyboardEvent):void {
    if (e.keyCode == Keyboard.SPACE){
        gotoAndPlay("welcome");
    }
}

1 个答案:

答案 0 :(得分:1)

在离开框架之前删除侦听器。

stop();
stage.addEventListener(KeyboardEvent.KEY_DOWN, myKeyDownn);
function myKeyDownn(e:KeyboardEvent):void {
    if (e.keyCode == Keyboard.SPACE){
        stage.removeEventListener(KeyboardEvent.KEY_DOWN, myKeyDownn);
        gotoAndPlay("welcome");
    }
}

在“欢迎”框架中再次添加相同的代码,只需更改gotoAndPlay()部分。

stop();
stage.addEventListener(KeyboardEvent.KEY_DOWN, myKeyDownn);
function myKeyDownn(e:KeyboardEvent):void {
    if (e.keyCode == Keyboard.SPACE){
        stage.removeEventListener(KeyboardEvent.KEY_DOWN, myKeyDownn);
        gotoAndPlay("a different frame");
    }
}