简易倒计时

实现效果图:

整体代码:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>倒计时</title>
</head>
<style>
  *{
    margin: 0;
    padding: 0;
  }
  .spans{
    border-radius: 5px;
    background-color: lightblue;
  }
  div{
    position: absolute;
    left: 200px;
    top: 200px;

  }
  span{
    width: 100px;
    height: 100px;
    display: block;
    text-align: center;
    line-height: 100px;
    float: left;
    font-size: 30px;
  }
  input:nth-child(1){
    position: absolute;
    left: 100px;
    top: -100px;
  }
  input:nth-child(2){
    position: absolute;
    left: 150px;
    top: -100px;
  }
</style>
<body>
  <div>
    <input type="button" value="begin">
    <input type="button" value="pause">
    <span class="spans"></span>
    <span>:</span>
    <span class="spans"></span>
    <span>:</span>
    <span class="spans"></span>
    <span>:</span>
    <span class="spans"></span>
    <span>:</span>
    <span class="spans"></span>
  </div>
  <script>
    var inputs=document.getElementsByTagName("input");
    var spans=document.getElementsByClassName("spans");

    // 13、将其封装成函数
    function MyFunction(){
      // 1、获取当前时间
      var nowdate=new Date();
      // console.log(nowdate)

      // 2、2017/5/1
      var enddate=new Date("2017/5/1");
      // console.log(enddate)

      // 3、获取当前毫秒数
      var nowtime=nowdate.getTime(nowdate)
      // console.log(nowtime)

      // 4、获取2017/5/1的毫秒数
      var endtime=enddate.getTime(nowdate)
      // console.log(endtime)

      // 5、当前到2017/5/1的毫秒数
      var netime=endtime-nowdate;
      // console.log(netime)

      // 6、获取毫秒数——利用向下取整,然后取余获得剩余的毫秒数
      var mseconds=Math.floor(netime%1000)
      // console.log(mseconds)

      // 7、获取秒数——利用向下取整,除以1000以后得到毫秒数,再取余获得剩下的秒数
      var seconds=Math.floor(netime/1000%60)
      // console.log(seconds)

      // 8、获取分钟数——利用向下取整,除以1000以后再除以60得到秒数,在取余得到剩下的分钟数
      var minutes=Math.floor(netime/1000/60%60)
      // console.log(minutes)

      // 9、获得小时数——利用向下取整,除以1000,再除以60,再除以60得到分钟数,最后取余得到剩下的小时数
      var hours=Math.floor(netime/1000/60/60%24)
      // console.log(hours)

      // 10、获得天数——利用向下取整,除以1000,再除以60,再除以60,最后除以24得到剩下的天数
      var days=Math.floor(netime/1000/60/60/24)
      // console.log(days)

      // 11、将天数、小时数、分钟数、秒数、毫秒数加到一个数组中
      var arr=[days,hours,minutes,seconds,mseconds];
      for(var i=0;i<arr.length;i++){
        // 12、将数组中的元素添加到浏览器中
        spans[i].innerHTML=bl(arr[i]);
      }
    }
    // 若在这里不加上调用的函数,则第一次时需要反映一段时间
    MyFunction();

    var timer=null;
    // 单击begin按钮开始
    // inputs[0].onclick=function(){
    // // 在开定时器前,先关上定时器——因为这样就可以使我们在连续点击开始以后,再点击关闭以后,出现无法关上的bug出现
      // clearInterval(timer);
      // timer=setInterval(function(){
        // MyFunction();
      // },1000);
    // }

    // 点击pause按钮暂停
    inputs[1].onclick=function(){
      clearInterval(timer);
    }

    // 倒计时
    timer=setInterval(function(){
      MyFunction();
    },100);

    // 19、给小于10的随机数前面补零
    function bl(n){
      return n<10?"0"+n:n;
    }

  </script>
</body>
</html>

时间: 2024-10-14 01:00:02

简易倒计时的相关文章

简易倒计时功能

<!doctype html> <html> <head> <meta charset="utf-8"> <title>倒计时</title> </head> <body> <div class="time"> <span id="t_d">00天</span> <span id="t_h"

深入理解BOM系列第三篇——定时器应用(时钟、倒计时、秒表和闹钟)

× 目录 [1]时钟 [2]倒计时 [3]秒表[4]闹钟 前面的话 本文属于定时器的应用部分,分别用于实现与时间相关的四个应用,包括时钟.倒计时.秒表和闹钟.与时间相关需要用到时间和日期对象Date,详细情况移步至此 时钟 最简单的时钟制作办法是通过正则表达式的exec()方法,将时间对象的字符串中的时间部分截取出来,使用定时器刷新即可 <div id="myDiv"></div> <script> myDiv.innerHTML = /\d\d:\

深入理解定时器系列第三篇——定时器应用(时钟、倒计时、秒表和闹钟)

前面的话 本文属于定时器的应用部分,分别用于实现与时间相关的四个应用,包括时钟.倒计时.秒表和闹钟.与时间相关需要用到时间和日期对象Date,详细情况移步至此 时钟 最简单的时钟制作办法是通过正则表达式的exec()方法,将时间对象的字符串中的时间部分截取出来,使用定时器刷新即可 <div id="myDiv"></div> <script> myDiv.innerHTML = /\d\d:\d\d:\d\d/.exec(new Date().toS

网页计算器 &amp;&amp; 简易网页时钟 &amp;&amp; 倒计时时钟

<!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"> <head> <meta http-equiv="Content-

Android实战简易教程-第四十一枪(显示倒计时的Button-适用于获取验证码)

近期在做获取验证码的功能.考虑到优良的用户体验,决定制作一个拥有倒计时提示的Button按钮,在网上查了一些资料,非常是简单的就能实现.我写了一个小Demo,大家能够应用到自己的项目中. 一.代码 1.activity_main.xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/to

js实现100秒倒计时和简易时钟

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>100s倒计时</title> <style> body,div{margin:0;padding:0;} body{color:#fff;font:16px/1.5 \5fae\8f6f\96c5\9ed1;} #countdown{width:300px;text-align:ce

Unity中使用协程实现倒计时功能

unity中协程的功能很强大,能够充分发挥unity协程功能的地方就是游戏的倒计时,今天我们就来实现一个简易版本的倒计时. 新建一个场景,给camera添加一个脚本,脚本内容如下: using UnityEngine; using System.Collections; public class ShowNumber : MonoBehaviour { private int tmp = 10; // Use this for initialization void Start () { //开

广告倒计时欢迎界面的实现

今天更新了一个App,打开这个App后弹出的页面是一个广告倒计时的页面,倒计时完毕后进入主界面.于是我闲着没事儿简易实现了一下这个功能,如图: 实现这个效果也很容易,在相应布局问下中添加TextView控件,控件的值就是倒计时的数字,这里我给倒计时添加了一个动画效果,项目的目录结构如下: AndroidManifest.xml 这里我配置了WelcomeActivity界面作为广告界面,配置它为应用的第一个activity,并且隐藏其标题. <?xml version="1.0"

装饰器实现简易限制函数调用频率

#装饰器实现简易限制函数调用频率,如10秒一次import mathimport timedef wrapper(func): start_time =0 def inner(*args,**kwargs): nonlocal start_time t = time.time() - start_time if t >= 10: start_time =time.time() ret = func(*args, **kwargs) return ret else: print(f"技能还在