炫意html5
最早CSS3和HTML5移动技术网站之一

html5教程:html5 实现动画(一)

HTML5教程之html5实现动画:用html5+javascript+canvas实现动画

 <canvas id="canvas1" width="250" height="300" style="background-color:black">   
    你的浏览器不支持 Canvas 标签,请使用 Chrome 浏览器 或者 FireFox 浏览器   
</canvas><br/>   
帧数:<input  id="txt1" type="text" value="25"/><br/>   
每次移动距离:<input type="text" id="txt2" value="10"/><br/>   
<input type="button" value="开始" onclick="move_box()"/>   
<input type="button" value="暂停" onclick="stop()"/>   
<script type="text/javascript">   
    //定时器   
    var interval=null;   
    //停止动画   
    function stop(){   
        clearInterval(interval);   
    }   
    //===================================================================   
    //基本动画   
    //====================================================================   
    function move_box(){   
        //停止动画   
        stop();   
        //移动速度   
        var delta=parseInt(document.getElementById('txt1').value);   
        //每秒绘制多少次   
        var fps=parseInt(document.getElementById('txt2').value);   
        //画布对象   
        var canvas=document.getElementById("canvas1")   
        //获取上下文对象   
        var ctx = canvas.getContext("2d");   
        //设置颜色   
        ctx.fillStyle="red";   
        //方块的初始位置   
        var x=100;var y=50;   
        //方块的长度和宽度   
        var w=30;var h=30;   
        //开始动画   
        interval = setInterval(function(){   
            //改变 y 坐标   
            yy=y+delta;   
            //上边缘检测   
            if(y<0){   
                y=0;   
                delta=-delta;   
            }   
            //下边缘检测   
            if((y+h)>canvas.getAttribute("height")){   
                y=canvas.getAttribute("height")-h;   
                delta=-delta;   
            }   
            //清空画布   
            ctx.clearRect(0,0,canvas.getAttribute("width"),canvas.getAttribute("height"));   
            //保存状态   
            ctx.save();   
            //移动坐标   
            ctx.translate(x,y);   
            //重新绘制   
            ctx.fillRect(0,0,w,h);   
            //恢复状态   
            ctx.restore();   
        },1000/fps);   
    }   
</script>  

源码下载:donghua1.rar

炫意HTML5 » html5教程:html5 实现动画(一)

CSS3教程HTML5教程