js实现图片实时时钟

 更新时间:2020年01月15日 15:29:36   作者:SSSkyCong  
这篇文章主要为大家详细介绍了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示例讲解时间复杂度与空间复杂度的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用js具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • 详解ES6 CLASS在微信小程序中的应用实例

    详解ES6 CLASS在微信小程序中的应用实例

    这篇文章主要介绍了详解ES6 CLASS在微信小程序中的应用实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • 微信小程序swiper组件实现抖音翻页切换视频功能的实例代码

    微信小程序swiper组件实现抖音翻页切换视频功能的实例代码

    这篇文章主要介绍了微信小程序swiper组件实现抖音翻页切换视频功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • JS取模、取商及取整运算方法示例

    JS取模、取商及取整运算方法示例

    这篇文章主要介绍了JS取模、取商及取整运算方法,结合实例形式分析了javascript取模、取商机取整等数学运算的常见操作方法,需要的朋友可以参考下
    2016-10-10
  • JavaScript 报表展示实现代码

    JavaScript 报表展示实现代码

    以下是从网上找到的一段JavaScript实现图形报表的代码,对于想客户端显示报表的朋友可以参考下。
    2009-12-12
  • 分页栏的web标准实现

    分页栏的web标准实现

    分页栏是网页上最常见不过的一个组件,本博文给出分页栏的一个web2.0标准示例,并作简要分析
    2011-11-11
  • Javascript前端UI框架Kit使用指南之kitjs的对话框组件

    Javascript前端UI框架Kit使用指南之kitjs的对话框组件

    本文以kitjs对话框组件为例,给我们详细介绍了kitjs的组件目录、默认代码模板、构造器及初始方法、以及Kitjs继承。讲解的非常细致,对我们熟练掌握kitjs组件很有帮助。
    2014-11-11
  • 简单的JS控制button颜色随点击更改的实现方法

    简单的JS控制button颜色随点击更改的实现方法

    下面小编就为大家带来一篇简单的JS控制button颜色随点击更改的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • 分享12个非常实用的JavaScript小技巧

    分享12个非常实用的JavaScript小技巧

    这篇文章主要介绍了分享12个非常实用的JavaScript小技巧,这些小技巧可能在你的实际工作中或许能帮助你解决一些问题,需要的朋友可以参考下
    2016-05-05
  • 微信{

    微信{"errcode":48001,"errmsg":"api unauthorized, hints: [ req_

    这篇文章主要介绍了微信{"errcode":48001,"errmsg":"api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]"},非常具有实用价值,需要的朋友可以参考下
    2018-10-10

最新评论