欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

js实现图片实时时钟

程序员文章站 2022-06-22 14:11:34
本文实例为大家分享了js实现图片实时时钟的具体代码,供大家参考,具体内容如下 描述: 将下图作为时间的背景,实现随时时钟的效果。 效果: 代码:

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

描述:

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

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>

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