使用Canvas在HTML5 Meter / ProgressBar标记上进行标记

时间:2011-06-18 07:16:49

标签: javascript html5 canvas

我想在HTML5 Meter上使用不同大小enter image description here的图像/图标在各个点进行标记。现在我可以使用span标签将它放在仪表的各个部分。

还有另一种选择吗?我想知道我是否可以使用canvas元素。

1 个答案:

答案 0 :(得分:2)

使用画布或WebGL肯定会更容易。

Canvas示例,假设images是包含字段imagexy的对象的数组:

context.fillRect(0, 0, 100, 10); // Progressbar background. Alternatively, you could stroke it (draw a border).
context.fillRect(0, 0, 10, 10); // Draw the current progress. I've hard coded it to 10% here.
for (var i = 0; i < images.length; i++)
{
    var a = images[i]; // I'm lazy
    context.fillRect(a.x - 1, 0, 2, a.y); // less code than stroking
    context.drawImage(a, a.x, a.y);
}