不要为触摸触发 onclick - Javascript

Don't fire onclick for touches - Javascript

我正在编写一个基于 canvas 并支持鼠标和触摸的 HTML5 应用程序。对于鼠标事件,我正在使用此功能:

canvas.onmousedown = function (e) { .... }

这是触摸事件:

canvas.ontouchstart = function (e) { .... }

点击事件工作正常,但在触摸输入时会触发两个事件。

有没有办法防止在触摸输入时触发点击事件?

仅当 touchstart 事件不可用时才尝试注册 onmousedown 事件。

if(!canvas.ontouchstart){
  canvas.onmousedown = function (e) { .... }
}