![]() |
|
||||
Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica. |
|||||
Você está aqui: HTML5 ::: HTML5 + JavaScript ::: Animação, Animações, Técnicas de Animação |
Como movimentar uma imagem na superfície do elemento Canvas do HTML5 usando as teclas de direçãoQuantidade de visualizações: 1272 vezes |
|
Nesta dica mostrarei uma das técnicas básicas para a animação em HTML5 + JavaScript. Trata-se de detectar as teclas de direção do teclado e movimentar uma imagem na tela, ou melhor, na superfície de um elemento Canvas. Nem preciso reforçar que esta técnica é essencial para o desenvolvimento de jogos em JavaScript. Antes de vermos o código é importante lembrar que as imagens do foguete e das nuvens foram colocadas no mesmo diretório da página HTML. Como essas imagens podem ter direitos reservados, eu não as incluí para download. Fica por sua conta encontrá-las na internet ou desenhar as suas próprias. Então, sem mais enrolação, veja o código JavaScript + HTML5 completo, sem plugs-ins nem bibliotecas, apenas "Plain Old JavaScript": ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Introdução a HTML5 Games</title>
<style type="text/css">
body {background-color: white};
</style>
</head>
<body onLoad="desenharFoguete()">
<Canvas id="canvas" style="background-color: white" width="600" height="600">
</Canvas>
<script type="text/javascript">
"use strict";
// obtemos uma referência ao elemento Canvas
var canvas = document.getElementById("canvas");
// obtemos o contexto de desenho
var contexto = canvas.getContext("2d");
// vamos carregar a imagem do foguete
var foguete = new Image();
foguete.src = "foguete.gif"; // GIF transparente
// vamos carregar a imagem de fundo
var fundo = new Image();
fundo.src = "nuvens.jpg";
// posições iniciais do foguete
var largura_imagem = 80;
var altura_imagem = 125;
var posX = (canvas.width / 2) - (largura_imagem / 2);
var posY = (canvas.height / 2) - (altura_imagem / 2);
function desenharFoguete(){
// limpamos toda a área de desenho
contexto.clearRect(0, 0, canvas.width, canvas.height);
// vamos desenhar o fundo
contexto.drawImage(fundo, 0, 0);
// vamos desenhar o foguete no centro do Canvas
contexto.drawImage(foguete, posX, posY);
}
document.onkeydown = function(e){
// obtém a tecla pressionada
var key = window.event?e.keyCode:e.which;
if(key == 37){ // é a seta para a esquerda?
posX = posX - 5; // move 5 pixels para a esquerda
}
else if(key == 38){ // é a seta para cima?
posY = posY - 5; // move 5 pixels para cima
}
else if(key == 39){ // é a seta para a direita?
posX = posX + 5; // move 5 pixels para a direita
}
else if(key == 40){ // é a seta para baixo?
posY = posY + 5; // move 5 pixels para baixo
}
desenharFoguete(); // redesenha o foguete e o background
}
</script>
</body>
</html>
|
|
|
Veja mais Dicas e truques de HTML5 |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






