【问题标题】:Why my add Event listener doesn't work correctly?为什么我的添加事件侦听器无法正常工作?
【发布时间】:2017-01-05 11:50:21
【问题描述】:

这是我的代码。

var _this = this;
var i = 0;
var object;

for (i=1 ; i <5 ; i++){
    object = new lib.A ();
    object.x = 50 * i;
    object.y = 100;
    _this.addChild (object);
    object.on ("tick" , position , true)
}

function position(){
    object.y += 1;
}

我在库中有一个对象,并创建并添加到第 4 阶段编号。 我想用 addEventListener (tick) 向下移动所有对象,但它移动了最后一个对象。

【问题讨论】:

    标签: easeljs


    【解决方案1】:

    您需要引用点击的对象。在您的代码中,object 变量在您的 for 循环中发生变化,因此最后它是最后一个已知值。而是使用事件中的点击目标(在点击处理程序中传递):

    function position(event){
        event.currentTarget.y += 1;
    }
    

    干杯,

    【讨论】:

      【解决方案2】:

      我希望你的代码中有一个stage 来描绘画布,如下所示:

      stage = new createjs.Stage("gameCanvas");

      我认为你错过了stage.update(event)

      function position(event){
        //....update the poositions
        stage.update(event);
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-01-31
        • 1970-01-01
        • 2023-03-18
        • 1970-01-01
        • 1970-01-01
        • 2020-06-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多