• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    html5绘制时钟动画

    <canvas id="clock" width="500" height="500" style="background-color: yellow"></canvas>


    复制代码
    代码如下:

    var clock=document.getElementById("clock");
    var cxt=clock.getContext("2d");
    function drawNow(){
    var now=new Date();
    var hour=now.getHours();
    var min=now.getMinutes();
    var sec=now.getSeconds();
    hour=hour>12?hour-12:hour;
    hour=hour+min/60;
    //表盘(蓝色)
    cxt.lineWidth=10;
    cxt.strokeStyle="blue"
    cxt.beginPath();
    cxt.arc(250,250,200,0,360,false);
    cxt.closePath();
    cxt.stroke();
    //刻度
    //时刻度
    for(var i=0;i<12;i++){
    cxt.save();
    cxt.lineWidth=7;
    cxt.strokeStyle="black";
    cxt.translate(250,250);
    cxt.rotate(i*30*Math.PI/180);//旋转角度 角度*Math.PI/180=弧度
    cxt.beginPath();
    cxt.moveTo(0,-170);
    cxt.lineTo(0,-190);
    cxt.closePath();
    cxt.stroke();
    cxt.restore();
    }
    //分刻度
    for(var i=0;i<60;i++){
    cxt.save();
    //设置分刻度的粗细
    cxt.lineWidth=5;
    //重置画布原点
    cxt.translate(250,250);
    //设置旋转角度
    cxt.rotate(i*6*Math.PI/180);
    //画分针刻度
    cxt.strokeStyle="black";
    cxt.beginPath();
    cxt.moveTo(0,-180);
    cxt.lineTo(0,-190);
    cxt.closePath();
    cxt.stroke();
    cxt.restore();
    }
    //时针
    cxt.save();
    // 设置时针风格
    cxt.lineWidth=7;
    cxt.strokeStyle="black";
    cxt.translate(250,250);
    cxt.rotate(hour*30*Math.PI/180);
    cxt.beginPath();
    cxt.moveTo(0,-140);
    cxt.lineTo(0,10);
    cxt.closePath();
    cxt.stroke();
    cxt.restore();
    //分针
    cxt.save();
    cxt.lineWidth=5;
    cxt.strokeStyle="black";
    //设置异次元空间分针画布的中心
    cxt.translate(250,250);
    cxt.rotate(min*6*Math.PI/180);
    cxt.beginPath();
    cxt.moveTo(0,-160);
    cxt.lineTo(0,15);
    cxt.closePath();
    cxt.stroke()
    cxt.restore();
    //秒针
    cxt.save();
    //设置秒针的风格
    //颜色:红色
    cxt.strokeStyle="red";
    cxt.lineWidth=3;
    //重置原点
    cxt.translate(250,250);
    //设置角度
    //cxt.rotate(330*Math.PI/180);
    cxt.rotate(sec*6*Math.PI/180);
    cxt.beginPath();
    cxt.moveTo(0,-170);
    cxt.lineTo(0,20);
    cxt.closePath();
    cxt.stroke();
    //画出时针,分针,秒针的交叉点
    cxt.beginPath();
    cxt.arc(0,0,5,0,360,false);
    cxt.closePath();
    //设置填充
    cxt.fillStyle="gray";
    cxt.fill();
    //cxt.strokeStyle="red";
    cxt.stroke();
    //画出秒针的小圆点
    cxt.beginPath();
    cxt.arc(0,-140,5,0,360,false);
    cxt.closePath();
    //设置填充
    cxt.fillStyle="gray";
    cxt.fill();
    //cxt.strokeStyle="red";
    cxt.stroke();</p> <p> cxt.restore();</p> <p>}
    function drawClock(){
    cxt.clearRect(0,0,500,500);
    drawNow();
    }
    drawNow();
    setInterval(drawClock,1000);

    上一篇:html5的canvas方法使用指南
    下一篇:html5使用canvas画一条线
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    html5绘制时钟动画 html5,绘制,时钟,动画,html5,