出于可访问性的原因,我们在网络应用程序中使用了实验性的 Hit Region 功能。我们刚刚发现此功能在Google Chrome中不再起作用。我在官方网站上找不到任何内容。
这是“命中区域”功能的简单演示:
employees: any[];
let canvas = document.getElementById('canvas');
let ctx = canvas.getContext('2d');
// head
ctx.beginPath();
ctx.arc(100, 100, 75, 0, 2 * Math.PI, false);
ctx.lineWidth = 5;
ctx.stroke();
// eyes
ctx.beginPath();
ctx.arc(70, 80, 10, 0, 2 * Math.PI, false);
ctx.arc(130, 80, 10, 0, 2 * Math.PI, false);
ctx.fill();
try
{
ctx.addHitRegion({id: "eyes"}); // NO SUPPORT => Exception
// mouth :-)
ctx.beginPath();
ctx.arc(100, 110, 50, 0, Math.PI, false);
ctx.stroke();
}
catch
{
// mouth :-(
ctx.beginPath();
ctx.arc(100, 160, 40, Math.PI, 0, false);
ctx.stroke();
}
canvas.addEventListener('mousemove', function(event) {
if (event.region) {
alert('hit region: ' + event.region);
}
});
运行上面的代码段:
该演示在Firefox 61.0.1中工作,但在Google Chrome 67.0.3396.99中工作,并且我无法在<canvas id="canvas"></canvas>
下找到相应的标记来启用它。有人知道该功能是否已删除吗?