【发布时间】:2014-04-21 21:28:18
【问题描述】:
我正在尝试使用画布,以便人们可以用鼠标写他们的签名。一切正常,直到我拉伸或滚动屏幕,然后它在远离鼠标的不同位置绘制线条。
代码:
function onMouseUp(event) {
'use strict';
mousePressed = false;
}
function onMouseMove(event) {
'use strict';
if (mousePressed) {
event.preventDefault();
mouseX = event.clientX - can.offsetLeft - mleft;
mouseY = event.clientY - can.offsetTop - mtop;
ctx.lineTo(mouseX, mouseY);
ctx.stroke();
}
}
function onMouseDown(event) {
'use strict';
mousePressed = true;
mouseX = event.clientX - can.offsetLeft - mleft;
mouseY = event.clientY - can.offsetTop - mtop;
ctx.beginPath();
ctx.moveTo(mouseX, mouseY);
}
can.addEventListener('mousemove', onMouseMove, false);
can.addEventListener('mousedown', onMouseDown, false);
can.addEventListener('mouseup', onMouseUp, false);
HTML 看起来像:
<canvas id="signature" width="567" height="150"></canvas>
【问题讨论】:
标签: javascript jquery html canvas