我使用canvas创建了一个绘图,我打算多次使用它来进行各种导航链接,我的问题是,当我多次引用它时它只会显示1.显然我可以复制每个实例的代码但是我计划使用它很多,所以这不太理想。请看下面的代码和链接的jsfiddle。非常感谢。
//first reference
<canvas id="canvasId" width="50" height="50"></canvas>
//second reference
<canvas id="canvasId" width="50" height="50"></canvas>
<script>
var context = document.getElementById("canvasId").getContext("2d");
var width = 125; // Triangle Width
var height = 45; // Triangle Height
var padding = 5;
// Draw a path
context.beginPath();
context.moveTo(padding + width-125, height + padding); // Top Corner
context.lineTo(padding + width-90,height-17 + padding); // point
context.lineTo(padding, height-35 + padding); // Bottom Left
context.closePath();
// Fill the path
context.fillStyle = "#9ea7b8";
context.fill();
</script>
答案 0 :(得分:1)
您只能拥有唯一ID
HTML:
<canvas id="canvasId" width="50" height="50"></canvas>
<canvas id="canvasId2" width="50" height="50"></canvas>
JS:
function drawSomething(canvas) {
var context = canvas.getContext("2d");
var width = 125; // Triangle Width
var height = 45; // Triangle Height
var padding = 5;
// Draw a path
context.beginPath();
context.moveTo(padding + width-125, height + padding); // Top Corner
context.lineTo(padding + width-90,height-17 + padding); // point
context.lineTo(padding, height-35 + padding); // Bottom Left
context.closePath();
// Fill the path
context.fillStyle = "#9ea7b8";
context.fill();
}
drawSomething(document.getElementById("canvasId"));
drawSomething(document.getElementById("canvasId2"));