HTML5實現(xiàn)一個能夠移動的小坦克示例代碼

字號:


    代碼如下:
    <!DOCTYPE html>
    <html>
    <head>
    </head>
    <body onkeydown="changeDirect()">
    <canvas id="tankMap" width="500px" height="300px">您的瀏覽器不支持canvas標簽</canvas>
    <script type="text/javascript">
    var canvas1=document.getElementById('tankMap');
    var ctx=canvas1.getContext('2d');
    var myX=30;
    var myY=30;
    function drawBall(){
    ctx.shadowBlur=30,ctx.shadowColor="#008C46";
    ctx.fillStyle='#008C46';
    ctx.fillRect(myX,myY,5,30);
    ctx.fillRect(myX+17,myY,5,30);
    ctx.fillRect(myX+6,myY+5,10,20);
    ctx.beginPath();
    ctx.fillStyle='#004020';
    ctx.arc(myX+11,myY+15,5,0,Math.PI*1.5);
    ctx.closePath();
    ctx.fill();
    ctx.strokStyle="#008C46";
    ctx.moveTo(myX+11,myY+15);
    ctx.lineTo(myX+11,myY-5);
    ctx.stroke();
    }
    drawBall();
    function changeDirect(){
    var code=event.keyCode;
    switch(code){
    case 87:
    myY--;
    break;
    case 68:
    myX++;
    break;
    case 83:
    myY++;
    break;
    case 65:
    myX--;
    break;
    }
    ctx.clearRect(0,0,500,300);
    //重新繪制
    drawBall();
    }
    </script>
    </body>
    </html>