Javascript 绘制应用HTML5画布,触摸事件问题
我把这个绘图应用程序作为一个练习,但现在我想在一个项目中重用代码,但我的问题是我需要触摸事件(对于ipad)而不是鼠标事件 我尝试使用jquery mobile,但无法正确获取X和Y 这里是现场演示: 代码如下:Javascript 绘制应用HTML5画布,触摸事件问题,javascript,jquery,html,canvas,Javascript,Jquery,Html,Canvas,我把这个绘图应用程序作为一个练习,但现在我想在一个项目中重用代码,但我的问题是我需要触摸事件(对于ipad)而不是鼠标事件 我尝试使用jquery mobile,但无法正确获取X和Y 这里是现场演示: 代码如下: var color = $(".selected").css("background-color"); var $canvas = $("canvas"); var context = $("canvas")[0].getContext("2d"); context.lineWidt
var color = $(".selected").css("background-color");
var $canvas = $("canvas");
var context = $("canvas")[0].getContext("2d");
context.lineWidth = 2;
var lastEvent;
var mouseDown = false;
$canvas.mousedown(function(e){
lastEvent = e;
mouseDown = true;
}).mousemove(function(e){
if(mouseDown){
context.beginPath();
context.moveTo(lastEvent.offsetX, lastEvent.offsetY );
context.lineTo(e.offsetX, e.offsetY);
context.strokeStyle = color;
context.stroke();
lastEvent = e;
}
}).mouseup(function(){
mouseDown = false;
}).mouseleave(function(){
$canvas.mouseup();
});
谢谢。HTML5画布支持触摸事件,您必须将它们添加为事件处理程序。我尝试了触摸事件,如“touchstart”而不是mousedown,该事件工作正常,但我的问题是“context.lineTo(e.offsetX,e.offsetY);”