【发布时间】:2017-11-15 01:37:48
【问题描述】:
一个常见问题,但我仍然需要帮助。当有人在画布内单击时,我试图获取并存储鼠标坐标。
我的 HTML
<canvas id="puppyCanvas" width="500" height="500" style="border:2px solid black" onclick = "storeGuess(event)"></canvas>
还有我的 javascript
//setup canvas
var canvasSetup = document.getElementById("puppyCanvas");
var ctx = canvasSetup.getContext("2d");
guessX = 0;//stores user's click on canvas
guessY = 0;//stores user's click on canvas
function storeGuess(event){
var x = event.clientX - ctx.canvas.offsetLeft;
var y = event.clientY - ctx.canvas.offsetTop;
/*guessX = x;
guessY = y;*/
console.log("x coords:" + x + ", y coords" + y);
我已经阅读了大量关于此的论坛、w3schools 和视频。我快要弄清楚了,但我错过了一些东西。删除ctx.canvas.offsetLeft和ctx.canvas.offsetTop可以得到页面的坐标。但我需要以某种方式合并这些以获取画布的坐标,然后将其存储到变量guessX 和guessY 中。
【问题讨论】:
标签: canvas coordinates mouse