Я пытаюсь отобразить несколько изображений холста одним нажатием кнопки.Я могу заставить одно изображение работать идеально, а второе - нет. Я знаю, что идентификаторы должны быть уникальными, и что только первый холст будет иметь изображение в настоящее время.
HTML
<!DOCTYPE html>
<html>
<head>
<script src="script.js"></script>
</head>
<body>
<div class="bg">
<img src="Assets/Images/background.png" alt="background">
</div>
<section class="content">
<img id="taxi" src="Assets/Images/PV.png" width="106" height="53">
<canvas id="myCanvas" width="106" height="53"
style="border:1px solid #d3d3d3; position:absolute; left:510px;top:117px;">
Your browser does not support the HTML5 canvas tag.</canvas>
<canvas id="myCanvas" width="106" height="53"
style="border:1px solid #d3d3d3; position:absolute; left:310px;top:117px;">
Your browser does not support the HTML5 canvas tag.</canvas>
<p><button onclick="myCanvas()">Try it</button></p>
</section>
</body>
</html>
JS
function myCanvas() {
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var img = document.getElementById("taxi");
ctx.drawImage(img,0,0,106,53);
}
Я знаю, что могу заставить его работать, изменив один id="myCanvas"
в HTML и повторив текущие строки в скрипте, чтобы заставить его работать.Но на конечной веб-странице будет много холста », и я не хотел повторять код JavaScript.
Есть ли простой способ сделать то, чего я пытаюсь достичь?