HTML5画的简单时钟
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title> <script type="text/javascript">
window.onload = function (){
var oC = document.getElementById("c1"); var oGC = oC.getContext("2d");
var x = 300;
var y = 300;
var r = 150; var h = 0;
var m = 0;
var s = 0; setInterval(function (){
var date = new Date();
h = date.getHours();
m = date.getMinutes();
s = date.getSeconds();
var f = m/2;
console.log(h + "-" + m + "-" + s + " , " + f);
html5Clock();
},1000); function html5Clock(){
oGC.beginPath();
for(var i = 0; i<60;i++){
oGC.moveTo(x,y);
oGC.arc(x,y,r,6*i*Math.PI/180,6*(i+1)*Math.PI/180); }
oGC.closePath();
oGC.stroke(); oGC.beginPath();
oGC.fillStyle = "#fff";
oGC.arc(x,y,r-8,0,2*Math.PI);
oGC.closePath();
oGC.fill(); oGC.beginPath();
//oGC.fillStyle = "red";
for(var i=0;i<12;i++){
oGC.moveTo(x,y);
oGC.arc(x,y,r,30*i*Math.PI/180,30*(i+1)*Math.PI/180);
//oGC.lineWidth = "2";
}
oGC.closePath();
oGC.stroke(); oGC.beginPath();
oGC.arc(x,y,r-20,0,2*Math.PI);
oGC.closePath();
oGC.fill(); //秒钟
oGC.beginPath();
//oGC.strokeStyle = "#016a9f";
oGC.moveTo(x,y);
oGC.arc(x,y,r-9,6*(s-15)*Math.PI/180,6*(s-15)*Math.PI/180);
oGC.lineWidth = "1";
oGC.stroke(); //分钟
oGC.beginPath();
oGC.moveTo(x,y);
oGC.arc(x,y,r-12,6*(m-15)*Math.PI/180,6*(m-15)*Math.PI/180);
//oGC.lineWidth = 2;
oGC.stroke(); //时钟
oGC.beginPath();
//oGC.strokeStyle = "red";
oGC.moveTo(x,y);
oGC.arc(x,y,r-50,(30*(h-3)+(m/2))*Math.PI/180,(30*(h-3)+(m/2))*Math.PI/180);
oGC.stroke();
} html5Clock(); }
</script> </head> <body> <canvas id="c1" width="800" height="600" style="border:1px solid #ccc;"></canvas> </body>
</html>
- 有空再写注释
HTML5画的简单时钟的更多相关文章
- CSS3+HTML5特效9 - 简单的时钟
原文:CSS3+HTML5特效9 - 简单的时钟 效果演示(加快了100倍) 实现原理 利用CSS3的transform-origin 及 transform 完成以上效果. 代码及说 ...
- HTML5 之Canvas 绘制时钟 Demo
<!DOCTYPE html> <html> <head> <title>Canvas 之 时钟 Demo</title> <!--简 ...
- HTML5画:线、圆、矩形、渐变
示例一:矩形 <!DOCTYPE html><head> <meta charset=utf-8> <title>HTML5画线.圆.矩形</ti ...
- 学习笔记:HTML5 Canvas绘制简单图形
HTML5 Canvas绘制简单图形 1.添加Canvas标签,添加id供js操作. <canvas id="mycanvas" height="700" ...
- Directx11学习笔记【十一】 画一个简单的三角形--effect框架的使用
这里不再介绍effect框架的具体使用,有关effect框架使用可参考http://www.cnblogs.com/zhangbaochong/p/5475961.html 实现的功能依然是画一个简单 ...
- html5滚动页面简单写法
html5滚动页面简单写法纵向滚动比较简单 直接在外面加个高度 然后overflow-y: auto; 横向比较复杂了外面写两层 最外面一层写个宽度 overflow-x: auto;第二层 写wid ...
- Unity项目 - 简单时钟 Clock
项目展示 Github项目地址:简单时钟 Clock 制作流程 表盘绘制: 采用Aseprite 像素绘图软件绘制表盘及指针.本例钟表素材大小 256x256,存储格式为png,但发现导入Unity后 ...
- 如何用latex画一个简单的表格
latex毫无疑问是一个十分强大的论文写作工具,所以掌握它就显得非常有意义,讲一下如何画一个简单的表格,代码如下: \begin{table}\centering\begin{tabular}{||c ...
- Directx11教程(19) 画一个简单的地形
原文:Directx11教程(19) 画一个简单的地形 通常我们在xz平面定义一个二维的网格,然后y的值根据一定的函数计算得到,比如正弦.余弦函数的组合等等,可以得到一个看似不错的地形或者 ...
随机推荐
- Ubuntu mysql 在线安装
$ sudo apt install mysql-server
- 【Struts 文件上传下载】
RegisterAction package k.action; import k.domain.User; import k.form.UserForm; import k.service.User ...
- 【MYSQL建库和建表】MYSQL建库和建表
1.Navicat创建Mysql数据库 2.创建创建用户表和索引 CREATE TABLE `t_user` ( `id` ) NOT NULL AUTO_INCREMENT COMMENT '主键' ...
- SQL按照某一列数据去重并显示整行信息
mysql按照某一字段去重,并显示其他字段信息.有时候会有一些这样的需求,就是按照sql中的某一列值去重,还要显示其他字段的信息.用distinct进行去重时不能显示整行的信息,对这种需求显然难以满足 ...
- combobox实现模糊搜索匹配
如图,输入关键字,进行匹配检索: 这里使用的是combobox组合框,对于combobox的创建可以使用<input>输入框,也可以使用<select>下拉选 HTML代码: ...
- TreeGrid分页树形表格
先展示效果图: 加载treegrid的json数据格式有两种: (1)基本的数据结构 [{ , "name":"C", "size":&qu ...
- JavaScript的技巧45招
JavaScript奇技淫巧45招 来自仲老师的分享: 原文地址[http://chensd.com/2015-01/45-useful-javascript-tips-tricks-and-best ...
- 【代码总结】PHP之会话跟踪技术
有些时候感觉自己学习的效率好低,一套教程一本书,反复听,反复看,反复敲代码.自学这条路真的是很艰难,在任何事情都没有成功之前都很枯燥乏味.自学的过程中总会遇到很多问题,有时候连错误的原因都找不出来,那 ...
- 【C#】图解如何添加引用using MySql.Data.MySqlClient;
使用C#连接MySQL时,经常会用到命名空间using MySql.Data.MySqlClient; 这说明VS中没有添加引用,解决方法如下: 1,可点击以下两个链接的其中任何一个,下载MySQL. ...
- Debian9安装Metasploit
参考博文:https://www.jianshu.com/p/ea0629b9e367 0x0 添加Kali源 deb http://http.kali.org/kali kali-rolling m ...