não consegui
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
não consegui
Oi, Augusto
Que problema você encontrou? Por que não conseguiu?
nao consigo fazer a "imagem" passar correndo pela tela pois nao estou conseguindo por ela na tela
Augusto, tente abrir o console do navegador apertando a tecla F12 e veja se aparece alguma mensagem de erro lá.
ja apaguei tudo agora =/
ja apaguei tudo agora =/
Tenta isso:
<canvas id="tela" width="600" height="400"></canvas>
<script>
var tela = document.getElementById("tela");
var c = tela.getContext("2d");
var imagem = new Image();
imagem.src = "http://www.urldaimagem.com"; //Substituir por alguma url de alguma imagem na internet
var x = 1;
var desenhaImagem = function(x, y)
{
c.drawImage(imagem, x, y);
};
var limpaTela = function()
{
c.clearRect(0, 0, 600, 400);
};
var desenha = function()
{
limpaTela();
desenhaImagem(x, 100);
x = x + 1;
};
setInterval(desenha, 30);
</script>
Eu também não consegui! Nem mesmo colando esse código deu certo : / Colando o código o JS console diz: "Failed to load resource: net::ERR_NAME_NOT_RESOLVED 462animacao8.html:10 Uncaught InvalidStateError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The HTMLImageElement provided is in the 'broken' state. 431animacao8.html:10 Uncaught InvalidStateError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The HTMLImageElement provided is in the 'broken' state." Teve uma tentativa que o JSconsole do crome não parava de contar erros, deu mais de mil!!
Fabio,
A resposta não está mastigada. O código que postei tem que ser adaptado à sua necessidade para funcionar. Provavelmente, um dos erros foi que você esqueceu de substituir um detalhe na linha abaixo:
imagem.src = "http://www.urldaimagem.com"; //Substituir por alguma url de alguma imagem na internet
Note que você precisa colocar uma URL que aponte para uma imagem. Isso quer dizer que a URL que está ali não funciona e precisa ser substituída por uma que funcione.