0

我正在尝试在此处的示例中添加一个事件侦听器: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 不起作用?

谢谢你。

编辑:这是来自顶部链接的 demo.js:http ://www.luxanimals.com/tutorials/birds/js/demo.js

4

1 回答 1

0

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

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

现场示例: http ://sandbox.createjs.com/EaselJS_Box2dWeb/

(这不是对您问题的直接编程答案,但我将其发布为答案,因为您尝试适应的教程已过时,不适用于 EaselJS 的当前标准,并且有更多最新的可用示例)

于 2013-07-19T20:15:33.843 回答