Crafty.addEvent()

public this Crafty.addEvent(Object ctx, HTMLElement obj, String event, Function callback)
ctx

事件回调上下文,即this

obj

添加事件的DOM元素节点

event

事件名称

callback

事件回调函数

将DOM3事件添加到元素。它接受的参数调用上下文(this 的值),DOM元素附加事件,事件名称(没有 on(是click 而不是 onclick))和最后的回调方法。

如果没有传入元素,默认为window.document.

回调函数会传入事件数据

注意:这仅与DOM事件相关,而不是Crafty自己的事件系统。当然,您可以在回调函数中触发Crafty的事件!

例子

通常你会使用Crafty的内置鼠标组件,但为了一个例子,让我们假装组件不存在。下面的代码将添加了一个MouseDown事件监听器的player实体,并记下鼠标点击的日志(X,Y)坐标视图/世界/游戏空间。

var player = Crafty.e("2D");
    player.onMouseDown = function(e) {
        Crafty.log(e.mouseButton, e.realX, e.realY);
    };
Crafty.addEvent(player, Crafty.stage.elem, "mousedown", player.onMouseDown);