JS倒计时两种种实现方式
最近一个网站功能用到到计时,如下所示:
原文: JS倒计时两种种实现方式
作者:黑仔002
用js就实现倒计时的两种方式:
一:设置时长,进行倒计时。比如考试时间等等
代码如下:
1 <html> 2 <head> 3 <meta charset="UTF-8"> 4 <title>简单时长倒计时</title> 5 <SCRIPT type="text/javascript"> 6 var maxtime = 60 * 60; //一个小时,按秒计算,自己调整! 7 function CountDown() { 8 if (maxtime >= 0) { 9 minutes = Math.floor(maxtime / 60); 10 seconds = Math.floor(maxtime % 60); 11 msg = "距离结束还有" + minutes + "分" + seconds + "秒"; 12 document.all["timer"].innerHTML = msg; 13 if (maxtime == 5 * 60)alert("还剩5分钟"); 14 --maxtime; 15 } else{ 16 clearInterval(timer); 17 alert("时间到,结束!"); 18 } 19 } 20 timer = setInterval("CountDown()", 1000); 21 </SCRIPT> 22 </head> 23 <body> 24 <div id="timer" style="color:red"></div> 25 <div id="warring" style="color:red"></div> 26 </body> 27 </html>
运行结果:
二:设置时间戳,进行倒计时。比如距离活动结束时间等等
代码如下:
1 <html> 2 <head> 3 <meta charset="UTF-8"> 4 <title>js简单时分秒倒计时</title> 5 <script type="text/javascript"> 6 function countTime() { 7 //获取当前时间 8 var date = new Date(); 9 var now = date.getTime(); 10 //设置截止时间 11 var str="2017/5/17 00:00:00"; 12 var endDate = new Date(str); 13 var end = endDate.getTime(); 14 15 //时间差 16 var leftTime = end-now; 17 //定义变量 d,h,m,s保存倒计时的时间 18 var d,h,m,s; 19 if (leftTime>=0) { 20 d = Math.floor(leftTime/1000/60/60/24); 21 h = Math.floor(leftTime/1000/60/60%24); 22 m = Math.floor(leftTime/1000/60%60); 23 s = Math.floor(leftTime/1000%60); 24 } 25 //将倒计时赋值到div中 26 document.getElementById("_d").innerHTML = d+"天"; 27 document.getElementById("_h").innerHTML = h+"时"; 28 document.getElementById("_m").innerHTML = m+"分"; 29 document.getElementById("_s").innerHTML = s+"秒"; 30 //递归每秒调用countTime方法,显示动态时间效果 31 setTimeout(countTime,1000); 32 33 } 34 </script> 35 </head > 36 <body onload="countTime()" > 37 <div> 38 <span id="_d">00</span> 39 <span id="_h">00</span> 40 <span id="_m">00</span> 41 <span id="_s">00</span> 42 </div> 43 </body> 44 </html>
运行结果:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
2019-06-10 Flask开发系列之快速入门