JavaScript

超轻量级php框架startmvc

js实现图片实时时钟

更新时间:2020-09-30 15:00:01 作者:startmvc
本文实例为大家分享了js实现图片实时时钟的具体代码,供大家参考,具体内容如下描述:

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

描述:

将下图作为时间的背景,实现随时时钟的效果。

效果:

代码:


<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
 <style>
 div div
 {
 float: left;
 width: 30px;
 font-size: 120px;
 }
 #hours0,#hours1,#minute0,#minute1,#second0,#second1
 {
 width: 200px;
 height: 165px;
 background-image: url("img/sztp.jpg");
 }
 </style>
</head>
<body>
 <div>
 <div id="hours0"></div>
 <div id="hours1"></div>
 <div>:</div>
 <div id="minute0"></div>
 <div id="minute1"></div>
 <div>:</div>
 <div id="second0"></div>
 <div id="second1"></div>
 </div>
<script>
 var hours0,hours1,minute0,minute1,second0,second1;
 var imgPositionList=[];//各数字的位置
 
 init();
 function init() {
 hours0=document.getElementById("hours0");//小时1
 hours1=document.getElementById("hours1");//小时2
 minute0=document.getElementById("minute0");//分钟1
 minute1=document.getElementById("minute1");//分钟2
 second0=document.getElementById("second0");//秒针1
 second1=document.getElementById("second1");//秒针2
 for(var i=0;i<10;i++){ //循环赋值各数字的位置
 if(i<5){ //第一排
 imgPositionList.push({x:-i*208,y:0});
 continue;
 }
 imgPositionList.push({x:-(i-5)*208,y:-173}) //第二排
 
 }
 console.log( imgPositionList);
 imgPositionList.unshift(imgPositionList.pop());//将0 :最末尾的图片 删除 ,返回的值提到最前面。
 
 setInterval(animation,16);
 }
 
 function animation() {
 var date=new Date();
 var hour=date.getHours().toString().split("").map(function (t) { return getNum(t) });
 var minutes=date.getMinutes().toString().split("").map(function (t) { return getNum(t) });
 var seconds=date.getSeconds().toString().split("").map(function (t) { return getNum(t) });
 
 getDoubleArr(hour);
 getDoubleArr(minutes);
 getDoubleArr(seconds);
 setTimeDiv(hours0,hour[0]);
 setTimeDiv(hours1,hour[1]);
 setTimeDiv(minute0,minutes[0]);
 setTimeDiv(minute1,minutes[1]);
 setTimeDiv(second0,seconds[0]);
 setTimeDiv(second1,seconds[1]);
 }
 
 function getDoubleArr(arr) { //字符串转化数组
 if(arr.length===1) arr.unshift(0);
 return arr;
 }
 function setTimeDiv(elem,num) { //时间与图片的对应
 clone(elem.style,{
 backgroundPositionX: imgPositionList[num].x+"px",
 backgroundPositionY: imgPositionList[num].y+"px"
 });
 }
 
 function getNum(str) {
 if(isNaN(Number(str))) return str;
 return Number(str);
 }
 function clone(target,source) {
 for(var key in source){
 target[key]=source[key];
 }
 }
</script>
</body>
</html>

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

js图片实时时钟 js图片时钟 js实时时钟