免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2409 | 回复: 0
打印 上一主题 下一主题

[HTML/HTML5] 为什么下面代码中pic1图片出现了一下就消失 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-12-10 18:00 |只看该作者 |倒序浏览
为什么下面代码中pic1图片出现了一下就消失,我打算用a,s,w,d四个键来控制pic1这张图片上下移动

<!DOCTYPE html>
<html>
<head>
    <title>frogger</title>

</head>
<body>
<canvas id="painting" width="600" height="600" style="border: 1px dashed grey;">

</canvas>
<>ress TAB to begin, W, A, S, D keys to move</P>
<script type="text/javascript">
    var canvas = document.getElementById("painting";
    canvas.addEventListener("keydown", doKeyDown, true);

    var context2D = canvas.getContext("2d";
    var pic = new Image();
    var pic1=new Image();
    var X=0,Y=200;
    var X1=200,Y1=200;
    pic.src = "music.jpg";
    pic1.onload = function()
    {
        context2D.drawImage(pic1,X1,Y1);
    }
    pic1.src = "qingwa.jpg";
    function doKeyDown(e)
    {
        // the W key
        if(e.keyCode == 87)
        {

            clearCanvas();
            Y1 = Y1 - 10;
            context2D.drawImage(pic1,X1,Y1);
        }

        //the s key
        if(e.keyCode == 83)
        {
            clearCanvas();
            Y1 = Y1 + 10;
            context2D.drawImage(pic1,X1,Y1);

        }

        //the a key
        if(e.keyCode == 65)
        {
            clearCanvas()
            X1 = X1 - 10;
            context2D.drawImage(pic1,X1,Y1);

        }

        //the d key
        if(e.keyCode == 6
        {
            clearCanvas()
            X1 = X1 + 10;
            context2D.drawImage(pic1,X1,Y1);
        }
    }

    function clearCanvas()
    {

        canvas.width = canvas.width;

    }

    function draw()
    {

        context2D.clearRect(0,0,600,600);
        context2D.save();
        context2D.drawImage(pic,X,Y);
        context2D.restore(); //绘制结束以后,恢复画笔状态
        if(X>600)
            X = 0;
        X = X + 100;
    }

    setInterval(draw, 1000);

</script>
</body>
</html>
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP