CreateJS Eventlistener在同一个函数上多次输入

时间:2015-08-14 15:35:19

标签: html5 adobe createjs

我正在使用Adobe Flash Professional中的createJS制作HTML5游戏。游戏有5个时间轴位置,第一个是加载游戏,第二个是游戏的标题,第三个是水平和指示,第四个是游戏本身,第五个是结束屏幕。< / p>

每次用户通过一个级别时,它会从第四个屏幕返回到第三个屏幕以显示该级别的指令。

timeline.gotoAndPlay(2);

我有拖放对象的事件,它在第一级工作正常,我删除了事件监听器,对象停止按预期移动。

 for (i=0; i< numberofpairs;i++)
 {
        paresArray2[i].sym.removeEventListener("pressmove", item_onMouseDown);
        paresArray2[i].sym.removeEventListener("pressup", stage_onMouseUp);

 }

当它进入水平时,它会进入第三个屏幕,然后又回到第四个屏幕,我再次拥有此代码(现在增加了numberofpairs),

for (i=0; i< numberofpairs;i++)
{
    paresArray2[i].sym.addEventListener("pressmove", item_onMouseDown);
    paresArray2[i].sym.addEventListener("pressup", stage_onMouseUp);
}

现在发生的事情是,每当事件被触发时,它就会在函数上输入两次,如果我前进另一个级别,那么它会进行3次,依此类推。如何在同一个函数中多次停止事件?

P.S。我做了一个测试,我在paresArray2 [i]中有两次事件监听器,它只在第一级输入一次。

1 个答案:

答案 0 :(得分:0)

通过将所有函数放在第一帧中来解决,格式为:

foo = function()
{

}

并在第四帧中调用它们。