zoukankan      html  css  js  c++  java
  • 如何用js来写一个简易的换图时钟

    <!DOCTYPE html>

    <html>

    <head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" /> /*写移动端需要加上这句代码*/

    <title></title>

    <link rel="stylesheet" type="text/css" href="css/reset.css"/> /*封装好的css 对一些基本的进行了设置*/

    <style type="text/css">

    #dad{width: 12rem;height: 10rem;margin: 20rem auto;}/*移动端的单位rem*/

    img{float: left;}

    </style>

    </head>

    <body>

    <div id="onclick">

    <img src="img/0.jpg"/> <!--首先我们的时钟是有六张图组成 例如 17:53:52 因此我们需要放六张图进去 接下来我们需要用到js做的就是换图而已

    <img src="img/0.jpg"/> img/0.jpg 这张图是数字0的图 此时我们的img目录下应该是0-9这十张图 -->

    <img src="img/0.jpg"/>

    <img src="img/0.jpg"/>

    <img src="img/0.jpg"/>

    <img src="img/0.jpg"/>

    </div>

    </body>

    </html>

    <script type="text/javascript">

    var iImg=document.getElementsByTagName("img"); //首先我们先获取到img这个标签

    setInterval(moo,1000); //时间函数 每1000毫秒执行以下moo()这个函数 也就是每一秒执行以下moo()这个函数

    moo(); //当我们写完之后会发现系统不会直接执行函数 会有一个一秒的延迟 因此我们只需在浏览器打开的时候先执行以下这个函数 就可以消除这个一秒的延迟

    function moo(){

    var now=new Date();

    var iHours=now.getHours();

    var iMinutes=now.getMinutes();

    var iSecends=now.getSeconds(); //分别获取时间 小时 分钟以及秒数

    function mov(j){ //因为我们是六张图 因此当我们时间小于10的时候 我们的iHours iMinutes iSecends为个位数 就不满足我们的六张图 因为我们需要

    if(j<10){ 考虑用0来补足 例如 17点5分5秒 我们需要写成17:05:05 而不是17:5:5

    return "0"+j; 因此我们用mov(j)这个函数来判断一下 当我们的iHours iMinutes iSecends为个位数时 我们为其补0 就是"0"+j

    }else{

    return j;

    }

    }

    var str=mov(iHours)+mov(iMinutes)+mov(iSecends); //那么这里我们只需要等量代换 把j这个参数换成iHours iMinutes iSecends就可以了 我们赋值给str 因此str将会输出

    一个六位数 例如现在是早晨9点51分27秒 那么str=095127 这么一个六位数

     for(var i=0;i<=5;i++){ //接下来我们用一个for循环换图就可以了 因为我们是六张图 因此i<=5即可 如果图数比较多 可以写成i<=iImg.length-1

    iImg[i].src="img/"+str[i]+".jpg"; // 这句话的含义就是换图 举个例子 iImg[1]代表的就是第二张图 str[1]就是上面str里面的第二个数字 就是9

    } 因此iImg[1].src=img/9.jpg 这样第二张图就换成了9这个图片 换图就完成了 因此一个时钟就做成了

    }

    </script>

  • 相关阅读:
    bzoj5157: [Tjoi2014]上升子序列(树状数组LIS)
    2435: [Noi2011]道路修建(树上操作)
    bzoj1019: [SHOI2008]汉诺塔(动态规划)
    bzoj1103: [POI2007]大都市meg(树链剖分)
    bzoj2190: [SDOI2008]仪仗队(欧拉)
    bzoj4519: [Cqoi2016]不同的最小割(分治最小割)
    bzoj2229: [Zjoi2011]最小割(分治最小割+最小割树思想)
    bzoj1816: [Cqoi2010]扑克牌(二分答案判断)
    [HEOI2015]兔子与樱花
    [POI2009]KAM-Pebbles
  • 原文地址:https://www.cnblogs.com/dyzw/p/7459447.html
Copyright © 2011-2022 走看看