我有一个非常简单的 HTML5 游戏,可以在常规浏览器中按预期运行,但是当从 iPhone 或 iPad 上的浏览器访问时,它无法识别 click 事件或 touchstart 事件。
原始代码来自此处的教程: http ://www.lostdecadegames.com/how-to-make-a-simple-html5-canvas-game/
我已经对其进行了修改并添加了一个单击事件,该事件会将笑脸移动到您在画布上单击的任何位置。此单击事件在 Mac 和 Windows 浏览器中使用鼠标运行良好:http: //iwebss.com/test
但是如果您使用 iPhone 或 iPad 访问它,则单击事件不起作用。我还尝试为 touchstart 添加一个额外的侦听器,这也不起作用。
这些是我添加到代码中的新侦听器:
addEventListener("click", mouseClickEvent, false);
function mouseClickEvent(e) {
alert("click event");
mouseClick = true;
if (e.offsetX) {
mouseX = e.offsetX;
mouseY = e.offsetY;
} else if(e.layerX) {
mouseX = e.layerX;
mouseY = e.layerY;
}
}
addEventListener("touchstart", testEvent, false);
function testEvent(e) {
alert("touchstart event");
}
关于我做错了什么或如何阅读 iPhone 和 iPad 触摸事件的任何想法?
编辑:我也尝试了也不起作用的 mousedown 事件。
已解决:我想通了...请参阅下面的答案。