JS实现针对给定时间的倒计时功能示例

作者:布瑞泽的童话 时间:2024-04-16 09:46:57 

本文实例讲述了JS实现针对给定时间的倒计时功能。分享给大家供大家参考,具体如下:

有时候,网站需要一个倒计时的特效来庆祝某些特别的日子。自己也实现了一个,占用内存也很小噢。其原理就是每隔一秒执行一次处理函数,将终点时间和现在的时间比较然后换算之后显示对应的值。

效果如下:

JS实现针对给定时间的倒计时功能示例

代码如下:


<!DOCTYPE html>
<html>
 <head>
   <meta charset="utf-8">
   <title>倒计时</title>
 </head>
 <body>
   <input type="text" name="time" id="time" value="2017-09-22" />
   <input type="button" name="okbtn" id="okbtn" value="确认" />
   <br />
   <p id="textp">这里显示倒计时</p>
 </body>
<script type="text/javascript">
 var okbtn=document.getElementById("okbtn");
 textp=document.getElementById("textp");
 okbtn.onclick=function(){
   var time=document.getElementById("time");
   var timevalue=time.value;
   //通过正则表达式确认输入格式是否正确
   var patt=/^(\d{1,4})(-)(\d{1,2})\2(\d{1,2})$/;
   if(patt.test(timevalue)==false){
     //如果不正确
     textp.innerHTML="输入格式不满足YYYY-MM-DD";
     return false;
   }else{
     textp.innerHTML="这里显示倒计时";
   }
   //获取输入的年月日
   var timearray=timevalue.split("-");
   //ShowLeftTime(timearray[0],timearray[1],timearray[2]);
   setInterval(function(){ShowLeftTime(timearray[0],timearray[1],timearray[2]);},1000);
 }
 function ShowLeftTime(year,month,date){
       //得出剩余时间
   var now=new Date();
   var endDate=new Date(year,month-1,date);
   var leftTime=endDate.getTime()-now.getTime();
   var leftsecond=parseInt(leftTime/1000);
   var day=Math.floor(leftsecond/(60*60*24));
   var hour=Math.floor((leftsecond-day*24*60*60)/3600);
   var minute=Math.floor((leftsecond-day*24*60*60-hour*3600)/60);
   var second=Math.floor(leftsecond-day*60*60*24-hour*60*60-minute*60);
   //显示剩余时间
   textp.innerHTML="距离"+year+"年"+month+"月"+date+"日"
   +"还有"+day+"天"+hour+"小时"+minute+"分"+second+"秒";
 }
</script>
</html>

希望本文所述对大家JavaScript程序设计有所帮助。

标签:JS,倒计时
0
投稿

猜你喜欢

  • 基于Python实现简单的定时器详解

    2021-04-12 01:21:28
  • python logging添加filter教程

    2022-08-21 00:36:43
  • 装了 Access 2003 安全更新 (KB981716) 之后 Access 打不开

    2010-12-09 19:59:00
  • Python dict和defaultdict使用实例解析

    2022-12-24 20:44:19
  • Python 字典dict使用介绍

    2021-09-23 16:58:51
  • SQL窗口函数之排名窗口函数的使用

    2024-01-26 18:49:31
  • Python 利用邮件系统完成远程控制电脑的实现(关机、重启等)

    2023-12-23 19:32:54
  • vue自定义过滤器创建和使用方法详解

    2024-05-09 15:17:06
  • Golang初始化MySQL数据库方法浅析

    2024-01-16 23:49:20
  • 使用navicat将csv文件导入mysql

    2024-01-17 07:06:38
  • 禁用JavaScript脚本来复制网站内容

    2007-02-03 11:30:00
  • Python while、for、生成器、列表推导等语句的执行效率测试

    2021-03-05 02:17:54
  • Python单向链表和双向链表原理与用法实例详解

    2021-11-21 15:04:27
  • 微信公众平台开发教程(六)获取个性二维码的实例

    2024-04-10 11:04:12
  • 详解css定位与定位应用

    2007-05-11 16:52:00
  • Javascript实现单选框效果

    2024-04-23 09:06:42
  • 淘宝CSS框架研究(1):Reset CSS(八卦篇)

    2009-03-31 12:58:00
  • Tensorflow加载预训练模型和保存模型的实例

    2022-06-03 05:55:41
  • python列表的逆序遍历实现

    2021-08-02 02:01:28
  • Python使用bar绘制堆积/带误差棒柱形图的实现

    2021-06-26 12:42:05
  • asp之家 网络编程 m.aspxhome.com