原生JS实现实时钟表

 更新时间:2021年08月23日 14:07:55   作者:aiguangyuan  
这篇文章主要为大家详细介绍了原生JS实现实时钟表,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

分享一个用原生JS实现的实时钟表特效,效果如下(PS:实际指针是按360度走的,截图时只截了一部分)

 

上面的效果一共需要4张图片,分别是表盘、时针、分针、秒针,根据需要可以自己做图片,实现的代码如下:

<!DOCTYPE html>
<html>
 
<head lang="en">
    <meta charset="UTF-8">
    <title>原生JS实现实时钟表</title>
    <style>
        .clock {
            width: 600px;
            height: 600px;
            margin: 100px auto;
            /* 表盘背景 */
            background: url(images/0.jpg) no-repeat;
            position: relative;
        }
 
        .clock div {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            /* 时针图片 */
            background: url(images/1.png) no-repeat center center;
        }
 
        #m {
            /* 分针图片 */
            background-image: url(images/2.png);
        }
 
        #s {
            /* 秒针图片 */
            background-image: url(images/3.png);
        }
    </style>
</head>
 
<body>
    <div class="clock">
        <div id="h"></div>
        <div id="m"></div>
        <div id="s"></div>
    </div>
 
    <script>
        // 获取元素
        var h = document.getElementById("h");//时
        var m = document.getElementById("m");//分
        var s = document.getElementById("s");//秒
        var timer = null;
 
        // 根据当前的时间实时的修改每个盒子的旋转角度
        timer = setInterval(function () {
            var date = new Date();
 
            // 根据当前date的每个时间部分,计算盒子运动的角度
 
            // 每小时  360/12  30度/小时
            h.style.transform = "rotate(" + date.getHours() * 30 + "deg)";
 
            // 每分钟 360/60   6度/分钟
            m.style.transform = "rotate(" + date.getMinutes() * 6 + "deg)";
 
            // 每秒 360/60   6度/秒
            s.style.transform = "rotate(" + date.getSeconds() * 6 + "deg)";
 
        }, 1000);
    </script>
</body>
 
</html>

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

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

相关文章

  • 原生JS实现拖拽排序的示例代码

    原生JS实现拖拽排序的示例代码

    说到拖拽,应用场景不可谓不多。无论是打开电脑还是手机,第一眼望去的界面都是可拖拽的,靠拖拽实现APP或者应用的重新布局,或者拖拽文件进行操作文件。本文就将利用JS实现拖拽排序,需要的可以参考一下
    2022-12-12
  • TypeScript语法详解之类型操作的补充

    TypeScript语法详解之类型操作的补充

    TypeScript最大的一个特点就是变量是强类型的,也就是说在声明变量的时候我们必须给他一个类型,下面这篇文章主要给大家介绍了关于TypeScript语法详解之类型操作的补充,需要的朋友可以参考下
    2022-08-08
  • js开发插件实现tab选项卡效果

    js开发插件实现tab选项卡效果

    这篇文章主要为大家详细介绍了js开发插件实现tab选项卡效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • 通过sails和阿里大于实现短信验证

    通过sails和阿里大于实现短信验证

    本篇文章主要介绍了通过sails和阿里大于实现短信验证的方法。具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • js给对象动态添加、设置、删除属性名与属性值实例代码

    js给对象动态添加、设置、删除属性名与属性值实例代码

    由于项目需要常常会遇到为某一个对象动态添加属性的情况,下面这篇文章主要给大家介绍了关于js给对象动态添加、设置、删除属性名与属性值的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-11-11
  • Bootstrap3 模态框使用实例

    Bootstrap3 模态框使用实例

    这篇文章主要介绍了Bootstrap3 模态框的使用实例,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-02-02
  • 微信小程序实现列表页的点赞和取消点赞功能

    微信小程序实现列表页的点赞和取消点赞功能

    这篇文章主要为大家详细介绍了微信小程序实现列表页的点赞和取消点赞功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • javascript css红色经典选项卡效果实现代码

    javascript css红色经典选项卡效果实现代码

    这篇文章主要为大家详细介绍了javascript css红色经典选项卡效果的实现代码,需要的朋友可以参考下
    2016-05-05
  • 浅谈javascript 函数表达式和函数声明的区别

    浅谈javascript 函数表达式和函数声明的区别

    javascript中声明函数的方法有两种:函数声明式和函数表达式.究竟他们用起来有什么区别呢,今天就本着打破砂锅问到底的精神,好好来说说这个让人神魂颠倒的--函数声明。
    2016-01-01
  • 微信小程序之五种页面跳转方法小结

    微信小程序之五种页面跳转方法小结

    本文主要介绍了微信小程序之五种页面跳转方法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06

最新评论