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 相关文章推荐
JavaScript入门教程(1) 什么是JS
Jan 31 Javascript
JavaScript中null与undefined分析
Jul 25 Javascript
从父页面读取和操作iframe中内容方法
Jul 25 Javascript
jQuery创建插件的代码分析
Apr 14 Javascript
读jQuery之四(优雅的迭代)
Jun 20 Javascript
yepnope.js 异步加载资源文件
Sep 08 Javascript
JS特权方法定义作用以及与公有方法的区别
Mar 18 Javascript
浅析JQuery获取和设置Select选项的常用方法总结
Jul 04 Javascript
jquery提取元素里的纯文本不包含span等里的内容
Sep 30 Javascript
浅谈window对象的scrollBy()方法
Jul 15 Javascript
浅谈jquery fullpage 插件增加头部和版权的方法
Mar 20 jQuery
React路由管理之React Router总结
May 10 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/10/09 PHP
WordPress开发中用于标题显示的相关函数使用解析
2016/01/07 PHP
php生成mysql的数据字典
2016/07/07 PHP
PHP使用curl函数发送Post请求的注意事项
2016/11/26 PHP
PHP实现的简单在线计算器功能示例
2017/08/02 PHP
PHP结合jquery ajax实现上传多张图片,并限制图片大小操作示例
2019/03/01 PHP
doctype后如何获得body.clientHeight的方法
2007/07/11 Javascript
JavaScript访问CSS属性的几种方式介绍
2014/07/21 Javascript
Node.js node-schedule定时任务隔多少分钟执行一次的方法
2015/02/10 Javascript
AngularJS表单详解及示例代码
2016/08/17 Javascript
详解浏览器渲染页面过程
2017/02/09 Javascript
React教程之封装一个Portal可复用组件的方法
2018/01/02 Javascript
javascript代码优化的8点总结
2018/01/29 Javascript
JS中使用react-tooltip插件实现鼠标悬浮显示框
2019/05/15 Javascript
js canvas实现俄罗斯方块
2020/10/11 Javascript
[55:18]Liquid vs Chaos 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
Python中常见的异常总结
2018/02/20 Python
新年快乐! python实现绚烂的烟花绽放效果
2019/01/30 Python
django ModelForm修改显示缩略图 imagefield类型的实例
2019/07/28 Python
django基于存储在前端的token用户认证解析
2019/08/06 Python
Python 多线程,threading模块,创建子线程的两种方式示例
2019/09/29 Python
Python json读写方式和字典相互转化
2020/04/18 Python
Python实现动态循环输出文字功能
2020/05/07 Python
卸载tensorflow-cpu重装tensorflow-gpu操作
2020/06/23 Python
python和js交互调用的方法
2020/06/23 Python
Python制作简单的剪刀石头布游戏
2020/12/10 Python
加拿大时尚少女服装品牌:Garage
2016/10/10 全球购物
简历中自我评价怎么写
2014/02/12 职场文书
《小小雨点》教学反思
2014/02/18 职场文书
保险公司晨会主持词
2014/03/22 职场文书
超越自我演讲稿
2014/05/21 职场文书
教师党员自我评价范文
2015/03/04 职场文书
业务员年终工作总结2015
2015/05/28 职场文书
宇宙与人观后感
2015/06/05 职场文书
社区安全温馨提示语
2015/07/14 职场文书
婚礼双方父亲致辞
2015/07/27 职场文书