Я пытаюсь рисовать различные элементы холста и очищать их независимо. Однако мои 2 разных контекста, похоже, затрагивают оба элемента холста и не функционируют как отдельные слои. Я хочу, чтобы иметь возможность изменять различные элементы холста независимо друг от друга, чтобы создать фон и передний план.Canvas Html5: несколько холстов и очистка, как видно, также очищают другой холст.
Соответствующие HTML:
<canvas id="canvas" style="position: abosloute; top:0px; left: 0px; z-index: 0;" width="500" height="300"></canvas>
<canvas id="canvas2" style="position: abosloute; top:0px; left: 0px;z-index: 1;" width="500" height="300"></canvas>
Соответствующий JavaScript (для создания контекста объектов):
var canvas = document.getElementById("canvas");
var canvas2 = document.getElementById("canvas2");
var ctx = canvas.getContext("2d");
var ctx2 = canvas.getContext("2d");
Соответствующий JavaScript вызов:
ctx.clearRect(0, 0, canvas.width, canvas.height);
Оказывается, чтобы очистить как ctx
и ctx2
, Я не понимаю, почему.
Вот ссылка на полный код на jsfiddle:
'вар ctx2 = холст .getContext ("2d"); '=>' var ctx2 = canvas' ** 2 ** '.getContext (" 2d ");' –