jquery+html5制作超酷的圆盘时钟表
自己封装的一个用HTML5+jQuery写的时钟表
代码:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
<!DOCTYPE html PUBLIC "-//W3C//h2D XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/h2D/xhtml1-transitional.h2d"><head><title>超酷数码钟表</title>/jquery/1.10.2/jquery.min.js"></script><script type="text/javascript">//引用的是在线jquery地址,如果不行请自行下载切换(function($){ $.fn.drawClock = function(options){ var mainId = $(this); //设置默认参数 var defaultOptions = { 'width': '300px', 'height': '300px', 'margin': '200px auto', 'border': '1px solid #888', 'border-radius': '50%', 'box-shadow': '2px 2px 4px #111' }; var options = $.extend(defaultOptions, options); mainId.css({ 'width': options.width, 'height': options.height, 'margin': options.margin, 'border': options.border, 'border-radius': options['border-radius'], 'box-shadow': options['box-shadow'], 'position': 'relative' }).css({ 'background': '-webkit-gradient(radial, ' + mainId.width()/2 + ' ' + mainId.height()/2 + ', 0, ' + mainId.width()/2 + ' ' + mainId.height()/2 + ', ' + mainId.width()/2 + ', from(#ffe), to(#eee))', 'background': '-moz-radial-gradient(circle closest-side, #ffe 0%, #eee 100%)' }); //钟表盘中心圆 $("<div id='circle'></div>").appendTo(mainId).css({ 'width': '20px', 'height': '20px', 'border-radius': '50%', 'box-shadow': '0 0 5px rgba(0,0,0,0.8)', 'position': 'absolute', 'z-index': 999, 'background': '-webkit-gradient(radial, ' + mainId.width()/2 + ' ' + mainId.height()/2 + ', 0, ' + mainId.width()/2 + ' ' + mainId.height()/2 + ', ' + mainId.width()/2 + ', from(#ffe), to(#eee))', 'background': '-moz-radial-gradient(circle, #eee 30%, #ffe 100%)' }).css({ 'left': mainId.width()/2 - $('#circle').width()/2, 'top': mainId.height()/2 - $('#circle').height()/2 }); var dateTime = new Date(); var oHours = dateTime.getHours(); var oMinutes = dateTime.getMinutes(); var oSeconds = dateTime.getSeconds(); //初始化时分秒 var hPointer = drawPointer(mainId.width()/2, mainId.height()/2, mainId.width()/2*(3/6), 5, "#333", -90+oHours*30+oMinutes*6/12); var mPointer = drawPointer(mainId.width()/2, mainId.height()/2, mainId.width()/2*(4/6), 4, "#666", -90+oMinutes*6); var sPointer = drawPointer(mainId.width()/2, mainId.height()/2, mainId.width()/2*(5/6), 3, "#f00", -90+oSeconds*6); //运动时分秒 var timer = setInterval(function(){ dateTime = new Date(); oHours = dateTime.getHours(); oMinutes = dateTime.getMinutes(); oSeconds = dateTime.getSeconds(); hPointer.css({'transform': 'rotate(' + (-90+oHours*30+oMinutes*6/12) + 'deg)'}); mPointer.css({'transform': 'rotate(' + (-90+oMinutes*6) + 'deg)'}); sPointer.css({'transform': 'rotate(' + (-90+oSeconds*6) + 'deg)'}); }, 1000); //绘制钟表刻度 for(var i=0; i<60; i++){ var width = 3, height = 6, oBcolor = '#111'; if(i%5 == 0){ width = 5; height = 10; } if(i%15 == 0){ oBcolor = 'red'; } $("<div class='clockMark'></div>").appendTo(mainId).css({ 'width': width, 'height': height, 'position': 'absolute', 'top': 0, 'left': mainId.width()/2, 'background': oBcolor, 'transform': 'rotate(' + i*6 + 'deg)', "transform-origin": "0 " + mainId.width()/2+'px' }); } //绘制钟表指针 function drawPointer (startx, starty, width, height, bcolor, angle) { var oPointer = $("<div></div>"); oPointer.appendTo(mainId).css({ 'width': width, 'height': height, 'position': 'absolute', 'top': starty, 'left': startx, 'background': bcolor, 'transform': 'rotate(' + angle + 'deg)', 'transform-origin': '0 0' }); return oPointer; } return this; }})(jQuery);</script><script type="text/javascript">$(function(){ $('#clock').drawClock();});</script></head> <body> <div id="clock"></div></body></html> |
演示图:

以上所述就是本文的全部内容了,希望大家能够喜欢。
您可能感兴趣的文章:
jquery+html5制作超酷的圆盘时钟表的更多相关文章
- jQuery和CSS3超酷表单美化插件
这是一款效果很精美炫酷的jQuery和CSS3联系方式表单美化插件.大多数站点上都有让用户填写的联系方式表单,一个设计良好的表单可以大大的提升用户的体验度.该表单美化插件在原生HTML表单的基础上进 ...
- 10款基于jquery实现的超酷动画源码
1.jQuery二级下拉菜单 下拉箭头翻转动画 之前我们分享过不少基于jQuery的二级下拉菜单,甚至是多级的下拉菜单,比如这款jQuery/CSS3飘带状多级下拉菜单就非常华丽.但今天要介绍的这款j ...
- 基于jQuery和CSS3超酷Material Design风格滑动菜单导航特效
分享一款效果非常炫酷的谷歌 Material Design 风格jQuery和CSS3滑动选项卡特效.该选项卡特效集合了扁平风格设计和按钮点击波特效.是一款设计的非常不错的Material Desig ...
- PS如何制作超酷3D字效果
效果图.jpg (24.94 KB) 2008-4-4 21:46 1.打开PS 执行文件-新建-新建550X400像素空白文档 1.jpg (36.69 KB) 2008-4-4 21:46 2.输 ...
- HTML5/CSS3超酷环形动画菜单
在线演示 本地下载
- 8款耀眼的jQuery/HTML5焦点图滑块插件
1.HTML5/CSS3超酷焦点图特效 带前后翻页按钮 今天要分享的这款HTML5/CSS3焦点图插件切换效果比较简单,但是外观和功能却十分强大.该CSS3焦点图在切换图片时,图片以淡入淡出的方式缩小 ...
- 超炫酷的jQuery/HTML5应用效果及源码
jQuery非常强大,我们之前也用jQuery分享过很多实用的插件.HTML5可以让网页变得更加绚丽多彩,将HTML5和jQuery结合使用那将发挥更棒的效果. 今天向大家收集了一些关于HTML5和j ...
- 8款超酷的HTML5 3D图片动画源码
1.HTML5移动端图片左右切换动画 今天要给大家分享一款很不错的图片左右切换焦点图动画,并且支持移动端触摸滑动.功能上,这款HTML5图片播放器支持鼠标滑动.手机端触摸滑动以及自动播放.外观上,这款 ...
- 精选10款超酷的HTML5/CSS3菜单
今天向大家精选了10款超酷的HTML5/CSS3菜单,给你的网页添加不一样的精彩,一起来围观一下吧. 1.CSS3手风琴菜单 下拉展开带弹性动画 利用CSS3技术可以实现各种各样的网页菜单,我们之前也 ...
随机推荐
- java观察者(Observer)模式
观察者模式: 试想,在电子商务网站上,一个用户看中了一件一份,但是当时衣服的价格太贵,你需要将衣服收藏,以便等衣服降价时自动通知该用户.这里就是典型的观察模式的例子. 1.观察者模式的 ...
- Python开发【数据结构】:算法(二)
堆排序 1.—树与二叉树简介 树是一种数据结构 比如:目录结构 树是一种可以递归定义的数据结构 树是由n个节点组成的集合: 如果n=0,那这是一棵空树: 如果n>0,那存在1个节点作为树的根节点 ...
- hdu 5056 Boring count (窗体滑动)
You are given a string S consisting of lowercase letters, and your task is counting the number of su ...
- 【生产问题】write log 引起系统卡死,业务全部阻塞
解决办法:https://www.sqlskills.com/help/waits/writelog/ [生产问题]write log 引起系统卡死,业务全部阻塞 writelog不成功不作数的,所以 ...
- [Axiom3D]第一个Axiom3D程序
Axiom3D程序的基本渲染流程 #region Namespace Declarations using System; using System.Linq; using Axiom.Core; u ...
- 【转】Deep Learning(深度学习)学习笔记整理系列之(四)
九.Deep Learning的常用模型或者方法 9.1.AutoEncoder自动编码器 Deep Learning最简单的一种方法是利用人工神经网络的特点,人工神经网络(ANN)本身就是具有层次结 ...
- Bootstrap fileinput v1.0(ssm版)
前言bootstrap fileinput是一个很好的文件上传插件.但是官方不出api,这就尴尬了.百度一下,每个人写法都不相同,好多代码本身都是错的.我修改后才能跑起来.综上所述:所以今天我摸索了一 ...
- HttpClient-RestTemplate-Feign
如何通过Java发送HTTP请求,通俗点讲,如何通过Java(模拟浏览器)发送HTTP请求. Java有原生的API可用于发送HTTP请求,即java.net.URL.java.net.URLConn ...
- mysql中生成列与JSON类型的索引
MySQL中支持生成列,生成列的值是根据列定义中包含的表达式计算的. 一个简单的例子来认识生成列! CREATE TABLE triangle( sidea DOUBLE, sideb DOUBLE, ...
- PHP设计模式_注册树模式
通过注册树模式可以更加简单快捷的获取对象,在某个地方实例化了一个对象,可以将这个对象“保存”起来(放入可以全局使用的数组里),用的时候只需要提供 保存对象的时候 的那个标识即可,解决全局共享和交换对象 ...