如何在 HTML5 画布上使用多次点击事件?

htmlweb developmentfront end technology更新于 2025/8/18 20:28:17

当画布上绘制一个圆圈时,我们将一半涂成红色,将另一半涂成灰色。点击红色部分时,调用函数 1。

点击灰色部分时,调用函数 2。我们需要使用可复用的路径对象来存储我们想要测试的不同部分。点击处理程序可用于共享画布并执行我们所需的操作。Path2D 对象可用于存储路径信息。

var path1 = new Path2D();
var path2 = new Path2D();

var newpaths = [path1,path 2];   // 需要一个数组来存储路径

path1.arc(200, 85,650, -0.2 * Math.PI, 2.7 * Math.PI); // 红色部分的路径
path2.arc(200, 85, 60, 2.7 * Math.PI, -1.1 * Math.PI); // 灰色部分的路径

// 两个路径对象使用相同的上下文 ctx1 进行渲染,但样式不同
ctx1.lineWidth = 16;
ctx1.strokeStyle = "#d43030";
ctx1.stroke(path1);
ctx1.strokeStyle = "#b8b8b8";
ctx1.stroke(path2);

然后检查 x 轴和 y 轴上公共画布的点击情况
然后迭代路径数组以测试每条路径是否命中。

<canvas id = "myCanvas1></canvas> // 然后将其附加到相应的画布上。

相关文章


有用资源