1
你好,所以我想学习如何使用HTML5 canvas 来绘制应用程序,并且我到目前为止写了这段代码,事情是浏览器控制台告诉我,不能当然无法读取未定义的属性'clientX',使用jquery
这里读的未定义的属性“clientX”,我使用jQuery是JS代码:
var canvas;
var context;
function getMousePos(e) {
var canBoundX = canvas.offsetLeft;
var canBoundY = canvas.offsetTop;
var x = e.clientX - canBoundX,
y = e.clientY - canBoundY;
return {x: x, y: y};
}
function drag_click() {
console.log(getMousePos());
}
function drag() {
console.log(getMousePos());
}
function drag_stop() {
console.log(getMousePos());
}
function draw() {
canvas = $("#mainCanvas")[0];
context = canvas.getContext('2d');
context.strokeStyle = "#000";
context.lineWidth = 4;
context.lineCap = "round";
$(canvas).mousedown(function (e) {
drag_click();
});
$(canvas).mousemove(function (e) {
drag();
});
$(canvas).mouseup(function (e) {
drag_stop();
});
}
$(document).ready(draw());
我通过E,在之前的所有功能,但它didin't工作,并再次修整,并没有工作,我相信它具有与jQuery和它处理事件的方式做,我只是不能搞清楚吧 –
@ J.Duo。我仍然不确定你是否正确地传递了参数。尝试复制我的代码。 – 2016-07-16 03:09:37
复制粘贴工作,我很惭愧缺少这样的事情,但没关系再也不会发生:D –