HTML5圆形彩虹时钟特效代码下载



如需定制开发(网站开发、二次开发)在线咨询,请点击>> QQ:753511799

8 31 11



特效描述:圆形彩虹时钟。HTML5圆形的彩虹时钟特效是一款基于HTML5 Canvas绘制圆形时钟,彩虹环时钟获取本地时间特效。

代码结构

1. HTML代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body >
<canvas id="canvas" width="300" height="300" style="border: 2px solid red;">
您的浏览器不支持canvas
</canvas>
<script>
    var c = document.getElementById("canvas");
    var ctx = c.getContext("2d");
    var cr=new Array({color:'red'},{color:'orange'},
        {color:'yellow'},{color:'blue'}, 
        {color:'green'}, {color:'#6A5ACD'},{color:'red'},{color:'orange'},
        {color:'yellow'},{color:'blue'}, 
        {color:'green'}, {color:'#6A5ACD'},{color:'red'}
        )
    drawclock(); //此处先引用函数是为了防止加载完页面的第一秒有空白画面。
    function drawclock() {
        ctx.save();
        ctx.clearRect(0,0,300,300);
        ctx.translate(150, 150);
        ctx.rotate(-Math.PI / 2);
        ctx.lineWidth = 6;
        for (var i = 0; i < 12; i++) {
            ctx.strokeStyle = "blue";
            ctx.beginPath();
            ctx.rotate(Math.PI / 6);
            ctx.moveTo(100, 0);
            ctx.lineTo(120, 0);
            ctx.stroke();
        }
         for (var k = 0; k < 12; k++) {
            ctx.beginPath();
            ctx.rotate(Math.PI / 6);
            ctx.arc(0,0,120,0,Math.PI / 6);
          //  ctx.strokeStyle='#00ff00';
            ctx.lineWidth=20;
            var grd = ctx.createLinearGradient(0,0,30,0);//从左到右
            grd.addColorStop(0,cr[k].color); //起始颜色
             grd.addColorStop(1,cr[k+1].color); //终点颜色
             ctx.strokeStyle=grd;
             ctx.stroke();
        }
        var time = new Date();
        var s = time.getSeconds();
        var m = time.getMinutes();
        var h = time.getHours();
        if (h > 12) {
            h -= 12;
        }
//                    时针的角度=360/12*小时+360/12/60分钟+360/12/60/60秒;
//                    换算成弧度
//                    时针的弧度= π/6*小时+π/360*分钟+π/2160*秒
        ctx.save();
        ctx.lineWidth = 9;
        ctx.beginPath();
        ctx.rotate(h * (Math.PI / 6) + (Math.PI / 360) * m + (Math.PI / 21600) * s);
        ctx.moveTo(-20, 0);
        ctx.lineTo(80, 0);
        ctx.stroke();
        ctx.restore();
//                    分针的角度=360/60*分钟+360/60/60*秒
//                    分针的弧度 =π/30*分钟+π/1800*秒
        ctx.save();
        ctx.lineWidth = 7;
        ctx.beginPath();
        ctx.rotate((Math.PI / 30) * m + (Math.PI / 1800) * s);
        ctx.moveTo(-20, 0);
        ctx.lineTo(112, 0);
        ctx.stroke();
        ctx.restore();
//                    秒针的角度=360/60*秒
                    //秒针的弧度 =π/30*秒
        ctx.save();
        ctx.lineWidth = 6;
        ctx.strokeStyle="black";
        ctx.beginPath();
        ctx.rotate((Math.PI / 30) * s);
        ctx.moveTo(-30, 0);
        ctx.lineTo(120, 0);
        ctx.stroke();
        ctx.restore();
//                    在钟表中心绘制一个圆点.
       ctx.beginPath();
        ctx.arc(0, 0, 10, 0, Math.PI * 2, true);
        ctx.fillStyle = "yellow";
        ctx.fill();
        ctx.restore();
    }
     setInterval("drawclock()",100);
</script>
</body>
</html>



用户评论
大牛,别默默的看了,快登录帮我点评一下吧!:)      登录 | 注册


热门标签: 时间轴 日历选择器 时间日期插件 日历日期时间

×
×
51前端

注册

×
绑定手机

请绑定手机号,在继续操作

×
单次下载支付

应付金额:279

支付完成后,回到下载页面,在进行下载

官方QQ群
意见反馈
qq群

扫描上面二维码加微信群

官方QQ群

jQuery/js讨论群
群号:642649996
Css3+Html5讨论群
群号:322131262

加群请备注:从官网了解到