之前在网上看了一些使用js写的时钟,但感觉实现的方法有点麻烦,所以就自己重新写了一个例子,样子有点丑,但方法比较简单,大家就凑合看吧

其中采用的主要方法是原生js里面的Data(时期)对象,以及它的.getSeconds()、.getMinutes()、.getHours()以及css3之中关于旋转部分的内容,以下是所写的代码:

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>translate</title>
<style>
* {
margin: 0;
padding: 0;
}
.biao {
width: 200px;
height: 200px;
margin: 0 auto;
border: 5px solid #000;
border-radius: 50%;
position: relative;
}
ul {
list-style: none;
position: relative;
}
li {
width: 3px;
height: 10px;
background: #000;
position: absolute;
}
.li1 {
left: 99px;
top: 0px;
}
.li2 {
left: 147px;
top: 12px;
transform: rotate(30deg);
}
.li3 {
left: 182px;
top: 49px;
transform: rotate(60deg);
}
.li4 {
left: 195px;
top: 97px;
transform: rotate(90deg);
}
.li5 {
left: 182px;
top: 143px;
transform: rotate(120deg);
}
.li6 {
left: 147px;
top: 178px;
transform: rotate(150deg);
}
.li7 {
left: 99px;
top: 192px;
transform: rotate(180deg);
}
.li8 {
left: 49px;
top: 178px;
transform: rotate(210deg);
}
.li9 {
left: 13px;
top: 143px;
transform: rotate(240deg);
}
.li10 {
left: 1px;
top: 97px;
transform: rotate(270deg);
}
.li11 {
left: 13px;
top: 49px;
transform: rotate(300deg);
}
.li12 {
left: 49px;
top: 12px;
transform: rotate(330deg);
}
.zx {
position: absolute;
width: 10px;
height: 10px;
border-radius: 50%;
left: 95px;
top: 95px;
background: #f00;
z-index: 10;
}
.zo {
position: absolute;
transform-origin: 50% bottom;
}
.miao {
width: 3px;
height: 80px;
left: 99px;
top: 20px;
background: #f00;
z-index: 8;
}
.fen {
width: 7px;
height: 60px;
left: 97px;
top: 40px;
background: #0f0;
z-index: 5;
}
.shi {
width: 11px;
height: 40px;
left: 95px;
top: 60px;
background: #00f;
z-index: 2;
}
.text {
position: absolute;
font-size: 30px;
}
.text1 {
top: 18px;
left: 93px;
}
.text2 {
top: 86px;
left: 165px;
}
.text3 {
top: 150px;
left: 93px;
}
.text4 {
top: 86px;
left: 25px;
}
</style>
</head>
<body>
<div class="biao">
<ul>
<li class="li1"></li>
<li class="li2"></li>
<li class="li3"></li>
<li class="li4"></li>
<li class="li5"></li>
<li class="li6"></li>
<li class="li7"></li>
<li class="li8"></li>
<li class="li9"></li>
<li class="li10"></li>
<li class="li11"></li>
<li class="li12"></li>
</ul>
<div class="text text1">0</div>
<div class="text text2">3</div>
<div class="text text3">6</div>
<div class="text text4">9</div>
<div class="zx"></div>
<div class="zo shi" id="shi"></div>
<div class="zo fen" id="fen"></div>
<div class="zo miao" id="miao"></div>
</div>
<script>
var shi = document.getElementById("shi");
var fen = document.getElementById("fen");
var miao = document.getElementById("miao");
var interval = setInterval(function(){
var now = new Date();
var s = now.getSeconds();
var f = now.getMinutes();
var h = now.getHours();
miao.style.transform = "rotate("+s/60*360+"deg)";
fen.style.transform = "rotate("+f/60*360+"deg)"
shi.style.transform = "rotate("+h/24*360+"deg)"
},1000);
</script>
</body>
</html>

纯html、css3、js的时钟的更多相关文章

  1. 【CSS3】纯CSS代码实现模拟时钟,+js对时功能。

    使用CSS3纯代码来实现模拟时钟,及指针动画功能. 在这里主要使用到css3一些基本元素: border-radius:圆角边框,画圆形:表盘 Transform:变换,旋转,扭曲:刻度盘,指针形状 ...

  2. 使用jQuery和CSS3制作数字时钟(jQuery篇) 附源码下载

    HTML 和上一篇文章:使用jQuery和CSS3制作数字时钟(CSS3篇)一样的HTML结构,只是多了个>date用来展示日期和星期的. <div id="clock" ...

  3. js 动态时钟

    js 动态时钟 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www ...

  4. JS实现时钟特效

    <!DOCTYPE html><html><head lang="en"><meta charset="UTF-8"& ...

  5. vue10行代码实现上拉翻页加载更多数据,纯手写js实现下拉刷新上拉翻页不引用任何第三方插件

    vue10行代码实现上拉翻页加载更多数据,纯手写js实现下拉刷新上拉翻页不引用任何第三方插件/库 一提到移动端的下拉刷新上拉翻页,你可能就会想到iScroll插件,没错iScroll是一个高性能,资源 ...

  6. 纯css、js 的H5页面对接echarts

    做项目时,会遇到一些零碎的技术点.记录下来以防忘记 需求:做可视化界面,但是需要兼容ie8,需要用纯css.js 的H5页面对接echarts,下面为效果图(带定时器循环显示tooltip). 实现方 ...

  7. 转 CSS3+js实现多彩炫酷旋转圆环时钟效果

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  8. 21个CSS3 / JS 时钟

    收集了21个酷炫的CSS / JS实现的时钟效果https://oktools.net/clocks 预览 :https://clocks.oktools.net/0/ 源码 :https://cod ...

  9. 纯Shading Language绘制HTML5时钟

    今天是2014年的最后一天,这个时刻总会让人想起时钟,再过几个小时地球人都要再老了一岁,于是搞个HTML5版的时钟就是我们今天要完成的任务,实现HTML5的时钟绘制一般会采用三种方式,第一种采用CSS ...

随机推荐

  1. HTML5 学习笔记(三)——本地存储(LocalStorage、SessionStorage、Web SQL Database)

    一.HTML4客户端存储 B/S架构的应用大量的信息存储在服务器端,客户端通过请求响应的方式从服务器获得数据,这样集中存储也会给服务器带来相应的压力,有些数据可以直接存储在客户端,传统的Web技术中会 ...

  2. Markdown工具的使用

    Markdown 工具的使用 基本操作 CMD-N 建立一个新的工作表 CMD-SHIFT-N 建立一个新的组 CMD-CTRL-N 建立一个新的过滤器 项目总是会被创建在当前所选的附近 工作表会被创 ...

  3. osg 示例程序解析之osgdelaunay

    osg 示例程序解析之osgdelaunay 转自:http://lzchenheng.blog.163.com/blog/static/838335362010821103038928/ 本示例程序 ...

  4. ubuntu12.04下root启动wireshark报错解决办法

    在ubuntu11.10以后版本中发现,安装wireshark后用root权限启动,弹出如下错误: Running as user “root” and group “root”. This coul ...

  5. JS问题汇总

    1.Q:$(this)在js中失效,无法获取当前元素 A​:function()在被调用时this是指向window的,如果要想指向被点击的元素,一般是将this作为参数传入,例如: <div ...

  6. # 20145205 《Java程序设计》第1周学习总结

    教材学习内容总结 第一章中 JAVA的三大体系:JAVA SE .JAVA EE.JAVA ME.而在其中书中主要介绍我们入门学习者所要学习的JVAA SE,其又可分为四个主要组成部分同Java SE ...

  7. Java 中的值传递和参数传递

    Java中没有指针,所以也没有引用传递了,仅仅有值传递不过可以通过对象的方式来实现引用传递 类似java没有多继承 但可以用多次implements 接口实现多继承的功能 值传递:方法调用时,实际参数 ...

  8. JMeter 响应文本乱码处理

    首次安装Jmeter后,会出现响应文本乱码现象,处理办法如下: (1)修改默认编码方式 Jmeter安装目录/bin/jmeter.properties中sampleresult.default.en ...

  9. mysql实现分组和组内序号

    SELECT CASE WHEN @mid = t.PAY_TIME THEN ELSE END SEQ, @mid := t.PAY_TIME, t.AMOUNTS, t.CHARGE_PRICE, ...

  10. Apache Kafka – KIP 32,33 Time Index

    32, 33都是和时间相关的, KIP-32 - Add timestamps to Kafka message 引入版本,0.10.0.0 需要给kafka的message加上时间戳,这样更方便一些 ...