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>

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

(0)

相关推荐

  • javascript入门·动态的时钟,显示完整的一些方法,新年倒计时

    时间对象作为非常重要的一个对象,对我们学.net的人来说,并不是很重要,但这并不意味着我们可以忽略,事实上,用得着的时候还是很多的,如果完全依赖JS处理时间,那是会出问题的,因为JS总是假设本地机器上的时间是正确的.还有个原因,他总按照GTM市区来计量.我们只是返回当前date对象的副本,我们即便是修改,那也不会对对象本身有任何影响. 演示一:动态的时钟(来个复杂的) 11:55:13 演示二:显示完整的一些方法(事实上我很讨厌有些格式了) Mon Oct 1 22:35:25 UTC+0800

  • JS实现的网页倒计时数字时钟效果

    本文实例讲述了JS实现的网页倒计时数字时钟效果.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml&q

  • JavaScript实现简单的时钟实例代码

    复制代码 代码如下: <html> <head> <title>JS实现简单的时钟</title><script> function displayTime() {        document.getElementById("time").innerHTML = new Date().toTimeString();    } setInterval(displayTime,1000);      // 每隔1秒钟调用dis

  • 基于javascript实现动态时钟效果

    本文实例讲解了javascript动态时钟效果的实现方法,分享给大家供大家参考,具体内容如下 实现代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <

  • 五步轻松实现JavaScript HTML时钟效果

    学了一段时间的HTML.CSS和JS后,给大家做一款漂亮的不像实力派的HTML时钟,先看图: 涉及到的知识点有: CSS3动画.DOM操作.定时器.圆点坐标的计算(好多人是不是已经还给自己的老师了~)  接下来,我们用5步来制作它 step1.准备HTML 首先,我们需要准备HTML结构,背景.表盘.指针(时针.分针.秒针).数字. <div id="clock"> <div class="bg"> <div class="p

  • 超级可爱纯js网页时钟

    //oObj input requires that a matrix filter be applied. //deg input defines the requested angle of rotation. var deg2radians = Math.PI * 2 / 360; function MatrixFilter(obj) { if(!obj.filters)return; //alert(obj.filters.item(0)); var Matrix; for(p in o

  • js时钟翻牌效果实现代码分享

    先给大家上运行效果图,看看是不是特别棒! 这一张是小编抓拍时钟翻牌时的效果图: 为大家分享的JavaScript时钟翻牌效果代码如下 <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Create an Animated Flip Down Clock</title> <link rel=&quo

  • html5 canvas js(数字时钟)实例代码

    复制代码 代码如下: <!doctype html><html>    <head>        <title>canvas dClock</title>    </head>    <body>        <canvas id = "clock" width = "500px" height = "200px">            您的浏览

  • js实现一个简单的数字时钟效果

    效果图: 代码如下: <!DOCTYPE HTML> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>一个简单的数字时钟</title> <script type="text/javascript" charset="utf-8

  • 一个简易时钟效果js实现代码

    本文实例为大家分享了js时钟特效 的具体代码,供大家参考,具体内容如下 js代码 var canvas = document.getElementById("clock"); var clock = canvas.getContext("2d"); function zhong() { clock.save(); //开始画外层圆 clock.translate(200, 200); clock.strokeStyle = 'black'; clock.lineWi

随机推荐