Haxe/OpenFL 如何处理 canvas 点击事件?
How does Haxe/OpenFL handle canvas click events?
我要在 Haxe HTML5 游戏之上添加一个 canvas。但是一旦我这样做,Haxe 游戏中的按钮就不再注册点击事件。有谁知道 Haxe/openFL 编译代码中处理点击事件的地方?
我最好的猜测是他们正在寻找最上面的 canvas,现在是我的,因此没有看到点击率。
编辑:
找到这段代码,鼠标事件被添加到 canvas:
while(_g2 < mouseEvents.length) {
var type2 = mouseEvents[_g2];
++_g2;
element1.addEventListener(type2,$bind(this,this.element_onMouse), true);
}
其中 element1 = canvas.
我似乎无法向 canvas 发送 $(canvas).click() 事件。有人有进一步的建议吗?
我的结论是,我使用 JQuery 向通过普通 JavaScript 添加的事件侦听器发送调用。
document.getElemntById("canvas").addEventListener("mousedown", func...);
显然 JQuery 调用不能调用非 JQuery 事件。
$(canvas).mousedown(); // does not work
使用
document.getElemntById("canvas").dispatchEvent(event) r
并将 MouseEvents 发送到 Haxe canvas 工作正常。
我要在 Haxe HTML5 游戏之上添加一个 canvas。但是一旦我这样做,Haxe 游戏中的按钮就不再注册点击事件。有谁知道 Haxe/openFL 编译代码中处理点击事件的地方?
我最好的猜测是他们正在寻找最上面的 canvas,现在是我的,因此没有看到点击率。
编辑:
找到这段代码,鼠标事件被添加到 canvas:
while(_g2 < mouseEvents.length) {
var type2 = mouseEvents[_g2];
++_g2;
element1.addEventListener(type2,$bind(this,this.element_onMouse), true);
}
其中 element1 = canvas.
我似乎无法向 canvas 发送 $(canvas).click() 事件。有人有进一步的建议吗?
我的结论是,我使用 JQuery 向通过普通 JavaScript 添加的事件侦听器发送调用。
document.getElemntById("canvas").addEventListener("mousedown", func...);
显然 JQuery 调用不能调用非 JQuery 事件。
$(canvas).mousedown(); // does not work
使用
document.getElemntById("canvas").dispatchEvent(event) r
并将 MouseEvents 发送到 Haxe canvas 工作正常。