canvas仿iwatch时钟效果


Posted in Javascript onMarch 06, 2017

效果图:

canvas仿iwatch时钟效果

图(1)

canvas仿iwatch时钟效果

图(2)

代码如下:

<!doctype html>
<html>
<head>
 <meta charset="UTF-8">
 <title>Title</title>
<style>
*{margin:0; padding:0;}
body{ background:#000; text-align:center;}
canvas{ background:#fff;}
</style>
<script>
function toDou(iNum){
 return iNum<10?'0'+iNum:''+iNum;
}
function d2a(n){
 return n*Math.PI/180;
}
window.onload = function(){
 var oC = document.getElementById('c1');
 var gd = oC.getContext('2d');
 var cx = oC.width/2,
 cy = oC.height/2;
 function clock(){
 gd.clearRect(0,0,oC.width,oC.height);
 var oDate = new Date();
 var H = oDate.getHours()%12;
 var M = oDate.getMinutes();
 var S = oDate.getSeconds();
 var MS = oDate.getMilliseconds();
 drawArc(60,0,(H*30+M/60*30),'orange');
 drawArc(80,0,(M*6+S/60*6),'purple');
 drawArc(100,0,(S*6+MS/1000*6),'aqua');
 var str = toDou(H)+':'+toDou(M)+':'+toDou(S);
 gd.font = '20px 微软雅黑';
 gd.textAlign = 'center';
 gd.textBaseline = 'middle';
 gd.fillText(str,cx,cy);
 }
 clock()
 setInterval(clock,1);
 function drawArc(r,s,e,color){
 color = color||'black';
 gd.beginPath();
 gd.arc(cx,cy,r,d2a(s-90),d2a(e-90),false);
 gd.strokeStyle = color;
 gd.lineWidth = 20;
 gd.stroke();
 }
};
</script>
</head>
<body>
 <canvas id="c1" width="800" height="600"></canvas>
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
北京奥运官方网站幻灯切换效果flash版打包下载
Jan 30 Javascript
实现png图片和png背景透明(支持多浏览器)的方法
Sep 08 Javascript
GWT中复制到剪贴板 js+flash实现复制 兼容性比较好
Mar 07 Javascript
jQuery源码分析之Event事件分析
Jun 07 Javascript
实现51Map地图接口(示例代码)
Nov 22 Javascript
ExtJS4中的requires使用方法示例介绍
Dec 03 Javascript
鼠标移入移出事件改变图片的分辨率的两种方法
Dec 17 Javascript
JS给Textarea文本框添加行号的方法
Aug 20 Javascript
javascript实现列表切换效果
May 02 Javascript
jQuery UI结合Ajax创建可定制的Web界面
Jun 22 Javascript
js检查是否关闭浏览器的方法
Aug 02 Javascript
解决vue props 拿不到值的问题
Sep 11 Javascript
jQuery滚动监听实现商城楼梯式导航效果
Mar 06 #Javascript
纯JS实现弹性导航条效果
Mar 06 #Javascript
JS实现颜色动态淡化效果
Mar 06 #Javascript
vue模板语法-插值详解
Mar 06 #Javascript
js中的面向对象入门
Mar 06 #Javascript
jQuery插件FusionCharts实现的2D面积图效果示例【附demo源码下载】
Mar 06 #Javascript
Vue 2.x教程之基础API
Mar 06 #Javascript
You might like
PHP中static关键字原理的学习研究分析
2011/07/18 PHP
php格式化日期和时间格式化示例分享
2014/02/24 PHP
php使用PDO获取结果集的方法
2017/02/16 PHP
javascript Prototype 对象扩展
2009/05/15 Javascript
jQuery函数的等价原生函数代码示例
2013/05/27 Javascript
JS保留两位小数,多位小数的示例代码
2014/01/07 Javascript
浅析node连接数据库(express+mysql)
2015/11/30 Javascript
详解javascript跨浏览器事件处理程序
2016/03/27 Javascript
Ionic2调用本地SQlite实例
2017/04/22 Javascript
详解在vue-cli中使用路由
2017/09/25 Javascript
Vue.js用法详解
2017/11/13 Javascript
浅谈Angular文字折叠展开组件的原理分析
2017/11/24 Javascript
创建与框架无关的JavaScript插件
2020/12/01 Javascript
用python实现的可以拷贝或剪切一个文件列表中的所有文件
2009/04/30 Python
使用Python生成url短链接的方法
2015/05/04 Python
flask中过滤器的使用详解
2018/08/01 Python
Python使用post及get方式提交数据的实例
2019/01/24 Python
Python使用sqlite3模块内置数据库
2020/05/07 Python
html5-Canvas可以在web中绘制各种图形
2012/12/26 HTML / CSS
北美主要的汽车零部件零售商:AutoShack.com
2019/02/23 全球购物
彪马荷兰官网:PUMA荷兰
2019/05/08 全球购物
Michael Kors香港官网:美国奢侈品品牌
2019/12/26 全球购物
NICKIS.com荷兰:设计师儿童时装
2020/01/08 全球购物
shallow copy和deep copy的区别
2016/05/09 面试题
linux下进程间通信的方式
2013/01/23 面试题
捷科时代的软件测试笔试题
2015/11/09 面试题
学期自我鉴定范文
2013/10/01 职场文书
物业公司采购员岗位职责
2013/12/31 职场文书
初中英语教学反思
2014/01/25 职场文书
公司股东合作协议书
2014/09/14 职场文书
个人职业及收入证明
2014/10/13 职场文书
教师教育教学随笔
2015/08/15 职场文书
如何在CocosCreator里画个炫酷的雷达图
2021/04/16 Javascript
教你用python控制安卓手机
2021/05/13 Python
Python 图片添加美颜效果
2022/04/28 Python
Python 一键获取电脑浏览器的账号密码
2022/05/11 Python