html 获取鼠标在canvas上的坐标,html5-canvas 检测鼠标在画布上的位置

示例

本示例将说明如何获取鼠标相对于画布的位置,例如(0,0)HTML5 Canvas的左上角。的e.clientX和e.clientY将获得相对于文档的顶部位置的鼠标,来改变这种是基于画布的顶部,我们减去left,并right从客户端X和Y的画布位置

var canvas = document.getElementById("myCanvas");

var ctx = canvas.getContext("2d");

ctx.font = "16px Arial";

canvas.addEventListener("mousemove", function(e) {

var cRect = canvas.getBoundingClientRect();        // 获取CSS pos,以及宽度/高度

var canvasX = Math.round(e.clientX - cRect.left);  // 减去画布的“左”

var canvasY = Math.round(e.clientY - cRect.top);   // 从X / Y位置

ctx.clearRect(0, 0, canvas.width, canvas.height);  // (0,0)画布的左上方

ctx.fillText("X: "+canvasX+", Y: "+canvasY, 10, 20);

});

可运行的例子

之所以使用,Math.round是因为要确保x,y位置为整数,因为画布的边界矩形可能没有整数位置。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值