纯js+css实现在线时钟


Posted in Javascript onAugust 18, 2020

本文实例为大家分享了js+css实现在线时钟的具体代码,供大家参考,具体内容如下

<!DOCTYPE html>
<html>
 <head>
 <meta charset="utf-8">
 <title>时钟</title>
 <style type="text/css">
 *{
 padding: 0;
 margin: 0;
 }
 .wrap{
 position: absolute;
 width: 200px;
 height: 200px;
 border: 2px solid;
 background-color: pink;
 border-radius: 50%;
 left: 50%;
 top: 50%;
 transform: translate(-50%,-50%);
 }
 .wrap>ul{
 list-style: none;
 }
 .wrap>ul>li{
 position: absolute;
 left: 99px;
 top: 0;
 width: 2px;
 height: 10px;
 background-color: black;
 transform-origin: center 100px;
 }
 .wrap>ul>li:nth-child(5n+1){
 height: 15px;
 }
 .wrap > .hour{
 position: absolute;
 left: 97px;
 top:70px ;
 width: 6px;
 height: 30px;
 background: black;
 transform-origin: center bottom;
 }
 .wrap > .min{
 position: absolute;
 left: 98px;
 top: 50px;
 width: 4px;
 height: 50px;
 background: gray;
 transform-origin: center bottom;
 }
 .wrap > .sec{
 position: absolute;
 left: 99px;
 top: 30px;
 width: 2px;
 height: 70px;
 background: red;
 transform-origin: center bottom;
 }
 .wrap > .center{
 position: absolute;
 left: 90px;
 top: 90px;
 width: 20px;
 height: 20px;
 border-radius:50% ;
 background: black;
 }
 </style>
 </head>
 <body>
 <div class="wrap">
 <ul></ul>
 <div class="hour"></div>
 <div class="min"></div>
 <div class="sec"></div>
 <div class="center"></div>
 </div>
 </body>
 <script type="text/javascript">
 window.onload =function(){
 var hourNode =document.querySelector(".wrap > .hour");
 var minNode =document.querySelector(".wrap > .min");
 var secNode =document.querySelector(".wrap > .sec");
 var ulNode =document.querySelector(".wrap>ul");
 var styleNode =document.createElement('style');
 var liHtml ='';
 var styleHtml ='';
 for(var i=0;i<60;i++){
 liHtml += "<li></li>";
 styleHtml+=".wrap>ul>li:nth-child("+(i+1)+"){transform: rotate("+(i*6)+"deg);}"
 }
 ulNode.innerHTML =liHtml;
 styleNode.innerHTML =styleHtml;
 document.querySelector('head').appendChild(styleNode);
 
 moveTime();
 setInterval(moveTime,1000);
 
 function moveTime(){
 var date =new Date();
 var sec =date.getSeconds();
 var min =date.getMinutes()+sec/60;
 var hour =date.getHours()+min/60;
 hourNode.style.transform ="rotate("+(hour*30)+"deg)";
 minNode.style.transform ="rotate("+(min*6)+"deg)";
 secNode.style.transform ="rotate("+(sec*6)+"deg)";
 }
 
 }
 </script>
</html>

纯js+css实现在线时钟

实现要点

1、transform-origin的基本点的应用
2、批量处理html和样式的信息
3、指证位置进行了优化(时针与小时和分针位置有关,分针与分和秒针位置有关)。

新增居中方式:

开启绝对定位 left:50%;top :50%;transform:translate(50%,50%);

更多JavaScript时钟特效点击查看:JavaScript时钟特效专题

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
使用Jquery Aajx访问WCF服务(GET、POST、PUT、DELETE)
Mar 16 Javascript
七个不允许错过的jQuery小技巧
Dec 21 Javascript
javascript中JSON.parse()与eval()解析json的区别
May 19 Javascript
JS 循环li添加点击事件 (闭包的应用)
Dec 10 Javascript
微信小程序图片选择、上传到服务器、预览(PHP)实现实例
May 11 Javascript
微信小程序实现顶部普通选项卡效果(非swiper)
Jun 19 Javascript
使用JavaScript实现在页面中显示距离2017年中秋节的天数
Sep 26 Javascript
node.js中fs文件系统目录操作与文件信息操作
Feb 24 Javascript
vue实现点击展开点击收起效果
Apr 27 Javascript
微信小程序有旋转动画效果的音乐组件实例代码
Aug 22 Javascript
基于Koa2写个脚手架模拟接口服务的方法
Nov 27 Javascript
vue.js实现双击放大预览功能
Jun 23 Javascript
three.js 利用uv和ThreeBSP制作一个快递柜功能
Aug 18 #Javascript
js+css实现扇形导航效果
Aug 18 #Javascript
js实现3D旋转效果
Aug 18 #Javascript
Vue elementui字体图标显示问题解决方案
Aug 18 #Javascript
详解三种方式在React中解决绑定this的作用域问题并传参
Aug 18 #Javascript
javascript实现移动端上传图片功能
Aug 18 #Javascript
八种Vue组件间通讯方式合集(推荐)
Aug 18 #Javascript
You might like
phpmyadmin操作流程
2006/10/09 PHP
php下图片文字混合水印与缩略图实现代码
2009/12/11 PHP
PHP中的MYSQL常用函数(php下操作数据库必备)
2010/09/12 PHP
PHP优于Node.js的五大理由分享
2012/09/15 PHP
JavaScript中的this实例分析
2011/04/28 Javascript
Javascript Object 对象学习笔记
2014/12/17 Javascript
jquery zTree异步加载、模糊搜索简单实例分享
2016/03/24 Javascript
浅析JavaScript 箭头函数 generator Date JSON
2016/05/23 Javascript
基于jQuery实现仿百度首页选项卡切换效果
2016/05/29 Javascript
BootStrap中按钮点击后被禁用按钮的最佳实现方法
2016/09/23 Javascript
JavaScript的for循环中嵌套一个点击事件的问题解决
2017/03/03 Javascript
JavaScript错误处理和堆栈追踪详解
2017/04/18 Javascript
js模仿微信朋友圈计算时间显示几天/几小时/几分钟/几秒之前
2017/04/27 Javascript
vue实现某元素吸顶或固定位置显示(监听滚动事件)
2017/12/13 Javascript
基于three.js编写的一个项目类示例代码
2018/01/05 Javascript
基于Vuejs的搜索匹配功能实现方法
2018/03/03 Javascript
浅谈对于“不用setInterval,用setTimeout”的理解
2019/08/28 Javascript
google广告之另类js调用实现代码
2020/08/22 Javascript
Python中的super用法详解
2015/05/28 Python
Python tkinter事件高级用法实例
2018/01/31 Python
python3实现钉钉消息推送的方法示例
2019/03/14 Python
python numpy 常用随机数的产生方法的实现
2019/08/21 Python
基于python3实现倒叙字符串
2020/02/18 Python
python numpy生成等差数列、等比数列的实例
2020/02/25 Python
心理健康课教学反思
2014/02/13 职场文书
节约用电标语
2014/06/17 职场文书
农村党支部书记党群众路线四风问题整改措施
2014/09/26 职场文书
2015年度党风廉政建设工作情况汇报
2015/01/02 职场文书
一年级语文上册复习计划
2015/01/17 职场文书
超市食品安全承诺书
2015/04/29 职场文书
学校推普周活动总结
2015/05/07 职场文书
2015年教师国培感言
2015/08/01 职场文书
浅谈Python类的单继承相关知识
2021/05/12 Python
pytorch实现手写数字图片识别
2021/05/20 Python
处理canvas绘制图片模糊问题
2022/05/11 Javascript
python+opencv实现目标跟踪过程
2022/06/21 Python