<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>

</head>
<body>
<canvas id="can1" width="500px" height="500px"></canvas>
<script type="text/javascript">
var canvas=document.getElementById('can1');
var cxt=canvas.getContext('2d');
function drawClock(){
cxt.clearRect(0,0,500,500);
var date=new Date()
var m=date.getSeconds();
var j=date.getMinutes();
var k=date.getHours();
//表盘
cxt.beginPath();
cxt.strokeStyle="blue";
cxt.lineWidth="10";
cxt.arc(250,250,200,0,360,false);
cxt.stroke();
cxt.closePath();
//表心
cxt.beginPath();
cxt.strokeStyle="#AA1514";
cxt.lineWidth="1";
cxt.arc(250,250,4,0,360,false);
cxt.fill();
cxt.closePath();
//时刻度
for(var i=0;i<12;i++){
cxt.save();
cxt.strokeStyle="black";
cxt.lineWidth="7";
cxt.translate(250,250);
cxt.rotate(30*i*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.strokeStyle="black";
cxt.lineWidth="5";
cxt.translate(250,250);
cxt.rotate(6*i*Math.PI/180);
cxt.beginPath();
cxt.moveTo(0,-180);
cxt.lineTo(0,-190);
cxt.closePath();
cxt.stroke();
cxt.restore();
}
//画秒针

cxt.save();
cxt.strokeStyle="black";
cxt.lineWidth="1";
cxt.translate(250,250);
cxt.rotate(6*m*Math.PI/180);
cxt.beginPath();
cxt.arc(0,-130,3,0,360,false);
cxt.fill();
cxt.closePath();
cxt.beginPath();
cxt.moveTo(0,12);
cxt.lineTo(0,-160);
cxt.closePath();
cxt.stroke();
cxt.restore();
//分针
cxt.save();
cxt.strokeStyle="black";
cxt.lineWidth="4";
cxt.translate(250,250);
cxt.rotate(6*j*Math.PI/180);
cxt.beginPath();
cxt.moveTo(0,10);
cxt.lineTo(0,-150);
cxt.closePath();
cxt.stroke();
cxt.restore();
//时针
cxt.save();
cxt.strokeStyle="black";
cxt.lineWidth="6";
cxt.translate(250,250);
cxt.rotate(30*k*Math.PI/180);
cxt.beginPath();
cxt.moveTo(0,8);
cxt.lineTo(0,-140);
cxt.closePath();
cxt.stroke();
cxt.restore();
}

setInterval("drawClock()",1000);

</script>
</body>
</html>

用H5的canvas做时钟的更多相关文章

  1. 用canvas绘制时钟

    用canvas做时钟其实很简单,下面是我做出的效果: 是不是还挺漂亮的? 下面上代码: html <div class="whole"> <canvas id=& ...

  2. canvas做的时钟,学习下

    canvas标签只是图形容器,您必须使用脚本来绘制图形. getContext() 方法可返回一个对象,该对象提供了用于在画布上绘图的方法和属性.——获取上下文对象. getContext(" ...

  3. [ZZ+CH] Html5 canvas+js 时钟

    总之新Blog入驻以后,又开始老习惯,到处折腾自定义的空间,放些东西. 想起以前大一的时候做过一个Javascript的时间显示器,现在想做一个时钟,当然现在老奸巨猾,会先去看一看有前辈写过没. 前辈 ...

  4. canvas粒子时钟

    前面的话 本文将使用canvas实现粒子时钟效果 效果展示 点阵数字 digit.js是一个三维数组,包含的是0到9以及冒号(digit[10])的二维点阵.每个数字的点阵表示是7*10大小的二维数组 ...

  5. canvas实现时钟

    最近在看新浪体育网球频道(http://sports.sina.com.cn/tennis/)的时候,看到了下面的劳力士广告的时钟是用canvas做的,于是也实现了一个简单的canvas时钟.直接上代 ...

  6. [JS,Canvas]日历时钟

    [JS,Canvas]日历时钟 Html: <!doctype html> <html> <head> <meta charset="UTF-8&q ...

  7. 使用canvas绘制时钟

    使用canvas绘制时钟  什么使canvas呢?HTML5 <canvas> 元素用于图形的绘制,通过脚本 (通常是JavaScript)来完成.<canvas> 标签只是图 ...

  8. HTML5 之Canvas 绘制时钟 Demo

    <!DOCTYPE html> <html> <head> <title>Canvas 之 时钟 Demo</title> <!--简 ...

  9. H5标签-canvas实现颜色拾取功能

    HTML5 <canvas> 标签是用于绘制图像,不过,<canvas> 元素本身并没有绘制能力(它仅仅是图形的容器),必须使用脚本(通常是 JS)来完成实际的绘图任务. &l ...

随机推荐

  1. 收集的一些jQuery (我平常用的少的,但确实挺有效果的)

    禁用Jquery(动画)效果 jQuery.fx.off = true; 使用自己的 Bullets(这个有一丁点儿的小技巧) //这里是js代码 也就是给每个ul添加一个类名 然后给ul的子li前面 ...

  2. HDU1024Max Sum Plus Plus(M段最大和)

    题意:求一个数组中 M 段的 最大和 没看明白怎么搞得 抽空来看,写的不赖 #include <iostream> #include <cstring> #include &l ...

  3. 今天执行grep命令差点把服务器搞崩

    grep "rst" -r ./ >> a.log 今天执行这个命令差点把服务器搞崩了. 本意是查找所有源代码文件中含有rst字符串的行,打印到文件a.log中,然后进 ...

  4. python处理中文(待补充)

    字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(en ...

  5. RestSharp使用

    class Program { private readonly static string investRankingForAllUrl = "http://192.168.1.98:90 ...

  6. /etc/profile、/etc/bashrc、~/.bash_profile、~/.bashrc 的区别(转)

    /etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行并从/etc/profile.d目录的配置文件中搜集shell的设置. /etc/bashrc:为每一个运 ...

  7. 单元测试写cookie

    我们在开发WEB项目的时候,一般应用逻辑跟ASPX页面是分离的项目.应用逻辑一般会是一个DLL组件项目.如果这个组件项目中A方法使用了Session.Cookie等信息的读写,则这个方法就很难写单元测 ...

  8. php 利用ffmpeg将amr转MP3

    原文地址: http://www.jianshu.com/p/895d5568ce70 http://www.cnblogs.com/wanghetao/p/3386311.html http://w ...

  9. WindowsService 创建.安装.部署

    windows服务的用法很适合用于一些长期跑的项目..不需要人工操作..不需要服务器一直登陆..很方便.. 不说废话..直接开整.. 启动VS2012..创建Windows服务项目.. 确定..创建成 ...

  10. Code First 关系 Fluent API

    通过实体框架 Code First,可以使用您自己的域类表示 EF 执行查询.更改跟踪和更新函数所依赖的模型.Code First 利用称为“约定先于配置”的编程模式.这意味着 Code First ...