这是我的网站,应该让用户用鼠标在画布上绘制。它在Chrome桌面浏览器上运行良好,但是如果我尝试在移动设备上执行此操作,则控制台上会弹出错误,说类似
index.js:95 Uncaught TypeError: Cannot read property 'clientX' of undefined
at HTMLCanvasElement.<anonymous> (index.js:95)
报告以下代码:
el.addEventListener("touchend", function (e) {
var touch = e.touches[0];
var mouseEvent = new MouseEvent("mouseup", {
clientX: touch.clientX,
clientY: touch.clientY
});
我真的不知道该怎么办,我相信问题出在我的jquery上,我想创建一些东西让用户用两根手指拖动页面并用一根手指绘制,但我唯一得到的是错误。
您正在查看错误的事件属性。您需要查询 e.changedTouches 而不是 e.touches:
https://developer.mozilla.org/en-US/docs/Web/API/TouchEvent/changedTouches
希望这有帮助。