javscript定时器demo:电子时钟

一、效果图
在这里插入图片描述

二、实现要点

  1. 先准备0-9的数字的图片素材。其中图片名和数字值相同。方便根据数字对应图片的路径。需要展示八张数字图片,根据时间的不同切换不同的数字。

  2. 步骤:
    a. 获取系统时间:Date对象、getHours()、getMinutes()
    b. 显示系统时间:字符串连接
    c. 设置图片路径:charAt

  3. 注意点:

  • getHours()、getMinutes()等函数取到的是数字,需要把时分秒拼接成字符串,根据字符串的index来换不同的数字图片。
  • 因为时间的各位显示都是两位数,所以如果数字小于10 需要在前面加0,因此定义一个函数format来实现这个功能。

三、代码
搭建时钟的结构
在这里插入图片描述

	<body style="background-color: #000; color:#fff">
		<div id="clock">
			<img src="images/0.png">
			<img src="images/0.png">
			:
			<img src="images/0.png">
			<img src="images/0.png">
			:
			<img src="images/0.png">
			<img src="images/0.png">
		</div>

	</body>
				var aImg = document.getElementsByTagName('img');
			
				//
				function format(time) {
					if (time < 10) {
						// 补0
						return '0' + time;
					} else {
						return '' + time
					}
				}
				
				function clock() {
					var oDate = new Date();
					// 直接得到的是数字,
					// 需要转变为字符串实现将时间的字符串拼接。
					//数字图片0 - 9 的路径名依次是images/0.png、images/1.png ...
					//例如时间为20:20:15  ->time = '202015'
					var time = format(oDate.getHours()) + format(oDate.getMinutes()) + format(oDate.getSeconds());
					
					for (let i = 0; i < aImg.length; i++) {
					// 根据当前的时间通过动态改变路径来选择图片
						aImg[i].src = 'images/' + time.charAt(i) + '.png'
					}
				}
				// 总是一秒后执行,会导致短暂00:00:00
				setInterval(clock, 1000);
				// 页面加载过程中直接先执行一遍
				clock();
			
			}

四、素材
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值