当前位置:首页 > 学习笔记 > 正文内容

使用Javascript(js)技术实现动态时钟效果

廖万里3年前 (2022-09-09)学习笔记103934

效果图:

使用Javascript(js)技术实现动态时钟效果

代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<style>
        .clock {
            width: 600px;
            height: 600px;
            margin: 0 auto;
            background:url(img/clock.jpg) no-repeat;
            position: relative;
        }
 
        .clock div {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
 
        }
 
        .h {
            background:url(img/hour.png) no-repeat center center;
        }
 
        .m {
            background:url(img/minute.png) no-repeat center center;
        }
 
        .s {
            background: url(img/second.png) no-repeat center center;
        }
    </style>
</head>
 
<body>
    <div class="clock">
        <div class="h" id="hour"></div>
        <div class="m" id="minute"></div>
        <div class="s" id="second"></div>
    </div>
</body>
 
</html>
<script>
    var hour = document.getElementById("hour");
    var minute = document.getElementById("minute");
    var second = document.getElementById("second");
    // 定义变量保存 秒、分、时、毫秒
    var s = 0, m = 0, h = 0, ms = 0;
    // 开始定时器
    setInterval(function () {
        // 得到最新的时间
        var date = new Date();
        // 现在的毫秒数
        ms= date.getMilliseconds();
        // 得到秒,如 1.3 s,通过毫秒计算小数位
        s= date.getSeconds()+ms/1000;
        // 得到分钟,如  45.6m,通过秒计算小数位
        m = date.getMinutes()+s/60;
        // 得到小时,如  4.6h,通过分钟计算小数位
        h=date.getHours()%12+m/60;
        // 计算并设置旋转角度
        // 一圈  360 °     一共有 60 秒       每秒  6 °   现在是 s秒
        second.style.WebkitTransform = "rotate(" + s * 6 + "deg)";
        //  变化旋转deg度
        minute.style.WebkitTransform = "rotate(" + m * 6 + "deg)";
        hour.style.WebkitTransform = "rotate(" + h * 30 + "deg)";
        second.style.MozTransform = "rotate(" + s * 6 + "deg)";
        //  变化旋转de度
        minute.style.MozTransform = "rotate(" + m * 6 + "deg)";
        hour.style.MozTransform = "rotate(" + h * 30 + "deg)";
    }, 100);
</script>
	</body>
</html>

图片素材:(请放在img目录下)

时钟(clock.jpg)

使用Javascript(js)技术实现动态时钟效果

时针(hour.png) 

使用Javascript(js)技术实现动态时钟效果

 分针(minute.png)

使用Javascript(js)技术实现动态时钟效果

秒针(second.png) 

使用Javascript(js)技术实现动态时钟效果


本文链接:https://www.kkkliao.cn/?id=14 转载需授权!

分享到:

版权声明:本文由廖万里的博客发布,如需转载请注明出处。


“使用Javascript(js)技术实现动态时钟效果” 的相关文章

MySql数据库增删改查常用语句命令

    最基本必会的增删改查         一.增Insert    (特殊的如果id自动递增的话,就不需要插入id) ...

Python所有的库都在这里了!!强烈建议收藏

Python所有的库都在这里了!!强烈建议收藏

前言嗨喽,大家好呀~又到了学Python时刻~随着大数据和人工智能的发展,Python也与多种科技深深绑定。比如自动化测试,运维,爬虫,数据分析,机器学习,金融领域,后端开发,云计算,游戏开发都有涉及。万丈高楼平地起,Python这座大厦能够如此强大,就是拥有强大的成千上万的库的支持无数牛x的轮子在...

MyBatis-写分页的几种方法,怎么写分页最简单

MyBatis-写分页的几种方法,怎么写分页最简单

1、就是直接使用我们的SQL语句进行分页,也就是在Mapper里面加上分页的语句就好了。比如MySQL添加一个limit 2,4。这种方式弊端很大,比如我们不用MySQL了,所有的代码都要修改。2、MyBatis中的分页的插件PageHelper,3、自己手写分页框架。这种用的比较少,不是说写不出来...

在mybatis中使用mysql存储过程-教学

在mybatis中使用mysql存储过程-教学

mysql  存储过程 ,教程来源:廖万里的CSDNMysql中的方法, 好处:安全,复用。缺点:不利于修改。1,将以下储存过程代码复制到mysql数据库中进行执行DELIMITER ;;CREATE DEFINER=`root`@`localhost`&nb...

Spring框架提供的多种属性注入方式

Spring框架提供的多种属性注入方式

1 set注入注入的成员变量必须要封装  set方法注入bean<!--成员变量对象--><!--<bean id="u" class="com.bdqn.User"></bean&g...

pyton打包成exe程序简易教程

我们知道,Python程序需要有python环境才能够运行的,但当我们开发出一个程序之后,给到用户 那么用户是不会去添加这个python环境的。 所以为了用户也能够正常使用,我们就需要将这个程序打包成exe程序。 location.href="https://blog.csd...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。