EaselJS:无法将事件侦听器添加到EaselJS + Box2dWeb示例中

时间:2013-07-19 19:27:07

标签: javascript html5 easeljs createjs box2dweb

我尝试在此处为示例添加事件监听器:http://www.luxanimals.com/blog/article/combining_easel_box2d

我尝试做的是,我将位图更改为

var birdBMP = new createjs.Bitmap("images/bird.png");
            birdBMP.x = Math.round(Math.random()*500);
            birdBMP.y = -30;
            birdBMP.regX = 25;   // important to set origin point to center of your bitmap
            birdBMP.regY = 25; 
            birdBMP.snapToPixel = true;
            birdBMP.mouseEnabled = true;
            stage.addChild(birdBMP);
            box2d.createBird(birdBMP);

此。现在我尝试将事件监听器绑定到此Bidmap对象,如下所示。

birdBMP.addEventListener("mousedown", function(evt){
    console.log("clicked");
});

但它不起作用。我使用相同的" demo.js"从那个例子。我唯一改变的是上面的那个。将Bitmap更改为createjs.Bitmap,然后将eventHandler添加到位图。其他一切工作正常,只是无法添加eventHandler。任何人都知道为什么这个eventHandler没有工作?

谢谢。

编辑:以下是顶部链接中的demo.js:http://www.luxanimals.com/tutorials/birds/js/demo.js

1 个答案:

答案 0 :(得分:0)

我注意到这个演示使用了一个不支持addEventListener的旧EaselJS版本,但是我也用onPress进行了测试但它不起作用 - 因为你还没有投入大量时间,我建议你查看Github上Sandbox的“官方”EaselJS-Box2D示例,该示例已经具有鼠标交互功能:

链接: https://github.com/CreateJS/sandbox

实例: http://sandbox.createjs.com/EaselJS_Box2dWeb/

(这不是你问题的直接程序性答案,但我把它作为答案发布了,因为你试图改编的教程已经过时,并且不适用于现有的EaselJS标准,而且还有更多 - 最新的例子)