Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

JS Canvas Почему элемент не передвигается по Y, а увеличивается по высоте?

Челик) Ученик (57), на голосовании 5 месяцев назад
 const canvas = document.querySelector('#canvas'), 
ctx = canvas.getContext('2d')

let dinoY = 140;

function initCanvas() {
canvas.width = canvas.clientWidth;
canvas.height = canvas.clientHeight;
ctx.fillStyle = 'lightgray';
ctx.fillRect(0, 0, canvas.width, canvas.height);
}

initCanvas();
window.onresize = initCanvas;

function draw() {
ctx.fillStyle = 'green';
ctx.fillRect(50, dinoY, 50, 70);
ctx.fillStyle = 'black';
ctx.fillRect(0, 210, canvas.width, 1);

requestAnimationFrame(draw);
}
draw();

function jump() {
setInterval(() => {
dinoY--;
}, 0);
}

window.onkeydown = (e) => {
jump();
};
Голосование за лучший ответ
Яков Гото Искусственный Интеллект (320352) 6 месяцев назад
твоя координата размещения не двигается сихронно с координатой размера
Челик)Ученик (57) 6 месяцев назад
и как это исправить?
Яков Гото Искусственный Интеллект (320352) хотя нет, проблема в другом. я не наблюдаю в твоем коде условия очистки холста. после каждого сдвига весь холст должен очищаться через ctx.clearRect(), наложенный на весь размер холста
Похожие вопросы