js+css3实现炫酷时钟


Posted in Javascript onAugust 18, 2020

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

html

<body>
    <ul id='box'></ul>
</body>

css

<style>
      *{
        margin: 0;
        padding: 0;
      }
      body{
        background-color: #aaa;
      }
      ul{
        width: 400px;
        height: 400px;
        border: 5px solid skyblue;
        margin: 100px auto 0 auto;
        border-radius: 50%;
         background: radial-gradient(green 50%, yellow 100%);;
        position: relative;

      }
      ul li{
        width: 2px;
        height: 15px;
        list-style: none;
        background-color: #fff;
        position: absolute;
        left: 199px;
        transform-origin: center 200px;
      }

      h1{
        width: 2px;
        height: 180px;
        background-color: orange;
        position: absolute;
        left: 199px;
        top:20px;
        -transition: 1s linear;
        transform-origin: center 180px;
      }
      h2{
        width: 6px;
        height: 160px;
        background-color: #fff;
        position: absolute;
        left: 197px;
        top:40px;
        transform-origin: center 160px;
        border-radius:20%;
      }

      h3{
        width: 8px;
        height: 140px;
        background-color: #fff;
        position: absolute;
        left: 196px;
        top:60px;
        transform-origin: center 140px;
        transform: rotate(0deg);
        border-radius: 20%;
      }
      h4{
        width: 30px;
        height: 30px;
        position: absolute;
        left: 185px;
        top:185px;
        border-radius: 50%;
        background-color: orange;
      }

      span{
        display: inline-block;
        width: 20px;
        height: 20px;
        line-height: 20px;
        text-align: center;
        font-size: 24px;
        position: absolute;
        left: -10px;
        top: 28px;
        color: #fff;
      }

</style>

js

(function(){
      var oUl=document.getElementById('box');
      var timer=null;
      for(var i=0,j=0;i<60;i++,j+=6){
        var oLi=document.createElement('li');
        oLi.style.transform='rotate('+j+'deg)';
        if(i%5==0){
          oLi.style.height='20px';
          var oSpan=document.createElement('span');
          oSpan.style.transform='rotate('+(-j)+'deg)';
          if(i==0){
            oSpan.innerHTML='12';
            oSpan.style.fontSize='30px';
            oSpan.style.left='-17px';
          }else{
            oSpan.innerHTML=parseInt(i/5);
            if(i%15==0){
              oSpan.style.fontSize='36px';
            }
          }
          oLi.appendChild(oSpan);
        }
        if(i==0){
          var oH1=document.createElement('h1');
          var oH2=document.createElement('h2');
          var oH3=document.createElement('h3');
          var oH4=document.createElement('h4');
          oUl.appendChild(oH1);
          oUl.appendChild(oH2);
          oUl.appendChild(oH3);
          oUl.appendChild(oH4);
        }
        oUl.appendChild(oLi);
      }
      var oH=document.getElementsByTagName('h3')[0];
      var oM=document.getElementsByTagName('h2')[0];
      var oS=document.getElementsByTagName('h1')[0];
      timer=setInterval(function(){
         var now = new Date();
         var s=now.getSeconds();
         var m=now.getMinutes()+s/60;
         var h=now.getHours()+m/60;
         oS.style.transform='rotate('+s*6+'deg)';
         oM.style.transform='rotate('+m*6+'deg)';
         oH.style.transform='rotate('+(h%12)*30+'deg)';
      },30);

    })();

作品截图

js+css3实现炫酷时钟

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

Javascript 相关文章推荐
showModalDialog 和 showModelessDialog
Jan 22 Javascript
IE event.srcElement和FF event.target 功能比较
Mar 01 Javascript
基于JQuery的6个Tab选项卡插件
Sep 03 Javascript
JavaScript版DateAdd和DateDiff函数代码
Mar 01 Javascript
在jQuery中 关于json空对象筛选替换
Apr 15 Javascript
利用JS延迟加载百度分享代码,提高网页速度
Jul 01 Javascript
jQuery模拟新浪微博首页滚动效果的方法
Mar 11 Javascript
详解微信小程序开发—你期待的分享功能来了,微信小程序序新增5大功能
Dec 23 Javascript
elementUI多选框反选的实现代码
Apr 03 Javascript
为什么Vue3.0使用Proxy实现数据监听(defineProperty表示不背这个锅)
Oct 14 Javascript
JavaScript获取当前url路径过程解析
Dec 27 Javascript
Openlayers学习之地图比例尺控件
Sep 28 Javascript
纯js+css实现在线时钟
Aug 18 #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
You might like
php分页函数
2006/07/08 PHP
真正的ZIP文件操作类(php)
2007/07/21 PHP
用PHP书写安全的脚本代码
2012/02/05 PHP
php CI框架插入一条或多条sql记录示例
2014/07/29 PHP
PHPTree――php快速生成无限级分类
2018/03/30 PHP
Laravel中正确地返回HTTP状态码方法示例
2019/09/10 PHP
Js 获取Gridview选中行的内容操作步骤
2013/02/05 Javascript
IE8的JavaScript点击事件(onclick)不兼容的解决方法
2013/11/22 Javascript
基于jquery实现简单的手风琴特效
2015/11/24 Javascript
JS获取文件大小方法小结
2015/12/08 Javascript
Vue 页面跳转不用router-link的实现代码
2018/04/12 Javascript
js中call()和apply()改变指针问题的讲解
2019/01/17 Javascript
JavaScript:ES2019 的新特性(译)
2019/08/08 Javascript
vuex actions异步修改状态的实例详解
2019/11/06 Javascript
纯js实现无缝滚动功能代码实例
2020/02/21 Javascript
微信小程序开发(三):返回上一级页面并刷新操作示例【页面栈】
2020/06/01 Javascript
uniapp 仿微信的右边下拉选择弹出框的实现代码
2020/07/12 Javascript
VUE 项目在IE11白屏报错 SCRIPT1002: 语法错误的解决
2020/09/27 Javascript
[01:15:29]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第三局
2016/03/04 DOTA
[47:35]VP vs Pain 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/20 DOTA
Python中处理unchecked未捕获异常实例
2015/01/17 Python
简单介绍使用Python解析并修改XML文档的方法
2015/10/15 Python
Python3利用SMTP协议发送E-mail电子邮件的方法
2017/09/30 Python
Python获取当前函数名称方法实例分享
2018/01/18 Python
python openCV实现摄像头获取人脸图片
2020/08/20 Python
Python列表元素删除和remove()方法详解
2021/01/04 Python
墨尔本复古时尚品牌:Dangerfield
2018/12/12 全球购物
劳动实践课感言
2014/02/01 职场文书
人力资源管理求职信
2014/08/07 职场文书
小学生一分钟演讲稿
2014/08/26 职场文书
2014年信访维稳工作总结
2014/12/08 职场文书
店长岗位职责
2015/02/11 职场文书
2015大学生党员自我评价范文
2015/03/03 职场文书
初一语文教学反思
2016/03/03 职场文书
浅析Django接口版本控制
2021/06/26 Python