javascript画布touchstart和touchend在触摸屏上不工作

javascript画布touchstart和touchend在触摸屏上不工作,javascript,canvas,touch,Javascript,Canvas,Touch,使用phpacademy绘画应用程序教程,我尝试添加触摸屏支持。我有相同的鼠标和触摸代码,但是触地和触地不会触发 canvas.addEventListener('mousedown', engage); canvas.addEventListener('mousemove', putPoint); canvas.addEventListener('touchstart', engage); canvas.addEventListener('touchmove', putPoint); canv

使用phpacademy绘画应用程序教程,我尝试添加触摸屏支持。我有相同的鼠标和触摸代码,但是触地和触地不会触发

canvas.addEventListener('mousedown', engage);
canvas.addEventListener('mousemove', putPoint);
canvas.addEventListener('touchstart', engage);
canvas.addEventListener('touchmove', putPoint);
canvas.addEventListener('mouseup', disengage);
canvas.addEventListener('mouseout', disengage);
canvas.addEventListener('touchend', disengage);

canvas元素不接收touchstart事件(我知道是lame)。为了让它正常工作,您必须在画布上设置一个div的绝对位置,并使用该div捕捉touchstart事件。

您能告诉我们处理程序使用的代码吗?对于触摸和鼠标事件,事件对象的外观会略有不同。您是否已通过console.log检查它们是否不会触发?您正在尝试使用哪些浏览器(至少Safari支持画布触摸事件)?http//Joey babcock.me/tests/php/5.php/在我发布这篇文章的前两天,我确实启动了javascript。我会尝试使用safari,然后再回答这个问题,比如一个贯穿整个页面的div?我试过了,但即使在chrome和safari中也不起作用。你能概括一下你所拥有的吗?在移动safari中,在画布上进行div对我来说很有用。是的,我也只是在safari中,直到现在…我会给出答案,尽管我希望有一种方法可以在chrome中实现,因为我讨厌safari。Hrm。。。它在移动chrome中为我工作。前往zbabb.com/touchtest.html,然后开始点击。从控制台中拉出src,看看您是否能看到与您所拥有的不同之处。