最全面的JS倒计时代码


Posted in Javascript onSeptember 17, 2016

本文实例为大家分享了JS倒计时展示的具体代码,供大家参考,具体内容如下

第一种:精确到秒的javascript倒计时代码  

HTML代码:  

<form name="form1"> 
<div align="center" align="center"> 
<center>离2010年还有:<br> 
<input type="textarea" name="left" size="35" style="text-align: center"> 
</center> 
</div> 
</form> 
<script LANGUAGE="javascript"> 
startclock() 
var timerID = null; 
var timerRunning = false; 
function showtime() { 
Today = new Date(); 
var NowHour = Today.getHours(); 
var NowMinute = Today.getMinutes(); 
var NowMonth = Today.getMonth(); 
var NowDate = Today.getDate(); 
var NowYear = Today.getYear(); 
var NowSecond = Today.getSeconds(); 
if (NowYear <2000) 
NowYear=1900+NowYear; 
Today = null; 
Hourleft = 23 - NowHour 
Minuteleft = 59 - NowMinute 
Secondleft = 59 - NowSecond 
Yearleft = 2009 - NowYear 
Monthleft = 12 - NowMonth - 1 
Dateleft = 31 - NowDate 
if (Secondleft<0) 
{ 
Secondleft=60+Secondleft; 
Minuteleft=Minuteleft-1; 
} 
if (Minuteleft<0) 
{ 
Minuteleft=60+Minuteleft; 
Hourleft=Hourleft-1; 
} 
if (Hourleft<0) 
{ 
Hourleft=24+Hourleft; 
Dateleft=Dateleft-1; 
} 
if (Dateleft<0) 
{ 
Dateleft=31+Dateleft; 
Monthleft=Monthleft-1; 
} 
if (Monthleft<0) 
{ 
Monthleft=12+Monthleft; 
Yearleft=Yearleft-1; 
} 
Temp=Yearleft+'年, '+Monthleft+'月, '+Dateleft+'天, '+Hourleft+'小时, '+Minuteleft+'分, '+Secondleft+'秒' 
document.form1.left.value=Temp; 
timerID = setTimeout("showtime()",1000); 
timerRunning = true; 
} 
var timerID = null; 
var timerRunning = false; 
function stopclock () { 
if(timerRunning) 
clearTimeout(timerID); 
timerRunning = false; 
} 
function startclock () { 
stopclock(); 
showtime(); 
} 
// --> 
</script>

第二种:某某运动会  

HTML代码:  

<!--倒计时Javascript begin--> 
<script language="JavaScript"> 
<!-- 
function DigitalTime1() 
{ 
var deadline= new Date("08/13/2007") //开幕倒计时 
var symbol="8月13日" 
var now = new Date() 
var diff = -480 - now.getTimezoneOffset() //是北京时间和当地时间的时间差 
var leave = (deadline.getTime() - now.getTime()) + diff*60000 
var day = Math.floor(leave / (1000 * 60 * 60 * 24)) 
var hour = Math.floor(leave / (1000*3600)) - (day * 24) 
var minute = Math.floor(leave / (1000*60)) - (day * 24 *60) - (hour * 60) 
var second = Math.floor(leave / (1000)) - (day * 24 *60*60) - (hour * 60 * 60) - (minute*60) 

var deadline_2= new Date("08/13/2004") //开幕后计时 
var symbol_2="8月13日" 
var now_2 = new Date() 
var diff_2 = -480 - now.getTimezoneOffset() //是北京时间和当地时间的时间差 
var leave_2 = (now_2.getTime() - deadline_2.getTime()) + diff_2*60000 
var day_2 = Math.floor(leave_2 / (1000 * 60 * 60 * 24)) 
var hour_2 = Math.floor(leave_2 / (1000*3600)) - (day_2 * 24) 
var minute_2 = Math.floor(leave_2 / (1000*60)) - (day_2 * 24 *60) - (hour_2 * 60) 
var second_2 = Math.floor(leave_2 / (1000)) - (day_2 * 24 *60*60) - (hour_2 * 60 * 60) - (minute_2*60) 
 
day=day+1; 
day_2=day_2+1; 

if (day>0) //还未开幕 
{ 
//LiveClock1.innerHTML = "现在"+symbol+"天" 
LiveClock1.innerHTML = "<font 
setTimeout("DigitalTime1()",1000) 
} 

if (day<0) //已经开幕 
{ 
//LiveClock1.innerHTML = "现在离"+symbol+"还有"+day+"天"+hour+"小时"+minute+"分"+second +"秒" 
LiveClock1.innerHTML = "<font 
setTimeout("DigitalTime1()",1000) 

} 

if (day==0) //正在开幕 
{ 
//LiveClock1.innerHTML = "现在"+symbol+"天" 
LiveClock1.innerHTML = "<font 
setTimeout("DigitalTime1()",1000) 
} 

 
 
if (day<0 & day_2>19) //某某运动会结束 
{ 
//LiveClock1.innerHTML = "现在离"+symbol+"还有"+day+"天"+hour+"小时"+minute+"分"+second +"秒" 
LiveClock1.innerHTML = "<font 
setTimeout("DigitalTime1()",1000) 

} 

} 
// --> 
</script> 
<!--倒计时Javascript end--> 
<body onload=DigitalTime1()> 
<div id= LiveClock1></div> 

</body>

第三种:小时倒计时  

HTML代码:  

<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var maxtime = 60*60 //一个小时,按秒计算,自己调整! 
function CountDown(){ 
if(maxtime>=0){ 
minutes = Math.floor(maxtime/60); 
seconds = Math.floor(maxtime%60); 
msg = "距离结束还有"+minutes+"分"+seconds+"秒"; 
document.all["timer"].innerHTML=msg; 
if(maxtime == 5*60) alert('注意,还有5分钟!'); 
--maxtime; 
} 
else{ 
clearInterval(timer); 
alert("时间到,结束!"); 
} 
} 
timer = setInterval("CountDown()",1000); 
//--> 
</SCRIPT> 
<div id="timer" style="color:red"></div>

第四种:最简倒计时  

HTML代码:  

<Script Language="JavaScript"> 
<!-- Begin 
var timedate= new Date("January 14,2006"); 

var times="研究生考试"; 

var now = new Date(); 

var date = timedate.getTime() - now.getTime(); 

var time = Math.floor(date / (1000 * 60 * 60 * 24)); 

if (time >= 0) ; 
document.write("<li><font color=#DEDBDE>现在离2006年"+times+"还有: <font color=#ffffff><b>"+time +"</b></font> 天</font></li>"); 
// End --> 
</Script>

第五种:最简倒计时二  

HTML代码:  

<script language="JavaScript" type="text/javascript"> 
function djs(){ 
var urodz= new Date("11/12/2008");  
var now = new Date(); 
var num 
var ile = urodz.getTime() - now.getTime(); 
var dni = Math.floor(ile / (1000 * 60 * 60 * 24));
 
if (dni >1)
 
num=dni+1 
else if (dni == 1) num=2  
else if (dni == 0) num=1 
else num=0  
document.write(num)
 
} 
</script>

距某某开幕式还有 [<script language="JavaScript" type="text/javascript">djs()</script>] 天  

第六种:Javascript倒计时器 - 采用系统时间自校验  
这次利用系统时间自校验倒计时, 无需手工调校使得倒计时更为精确, 代码及详细注释如下:  

<span id="clock">00:01:11:00</span> 
<input id="startB" type="button" value="start countdown!" onclick="run()"> 
<input id="endB" type="button" value="stop countdown!" onclick="stop()"> 
<br> 
<input id="diff" type="text"> 
<input id="next" type="text"> 
<script language="Javascript"> 
/* This notice must be untouched at all times.

countdown.js v. 1.0 
The latest version is available at 
http://blog.csdn.net/yjgx007

Copyright (c) 2004 Xinyi.Chen. All rights reserved. 
Created 7/30/2004 by Xinyi.Chen. 
Web: http://blog.csdn.net/yjgx007 
E-Mail: chenxinyi1978@hotmail.com 
Last modified: 7/30/2004

This program is free software; 
you can redistribute it and/or modify it under the terms of the 
GNU General Public License as published by the Free Software Foundation;

See the GNU General Public License 
at http://www.gnu.org/copyleft/gpl.html for more details. 
*/ 
var normalelapse = 100; 
var nextelapse = normalelapse; 
var counter; 
var startTime; 
var start = clock.innerText; 
var finish = "00:00:00:00"; 
var timer = null; 

// 开始运行 
function run() { 
startB.disabled = true; 
endB.disabled = false; 
counter = 0; 
// 初始化开始时间 
startTime = new Date().valueOf(); 

// nextelapse是定时时间, 初始时为100毫秒 
// 注意setInterval函数: 时间逝去nextelapse(毫秒)后, onTimer才开始执行 
timer = window.setInterval("onTimer()", nextelapse); 
} 

// 停止运行 
function stop() { 
startB.disabled = false; 
endB.disabled = true; 
window.clearTimeout(timer); 
} 

window.onload = function() { 
endB.disabled = true; 
} 

// 倒计时函数 
function onTimer() 
{ 

if (start == finish) 
{ 
window.clearInterval(timer); 
alert("time is up!"); 
return; 
} 

var hms = new String(start).split(":"); 
var ms = new Number(hms[3]); 
var s = new Number(hms[2]); 
var m = new Number(hms[1]); 
var h = new Number(hms[0]); 
 
ms -= 10; 
if (ms < 0) 
{ 
ms = 90; 
s -= 1; 
if (s < 0) 
{ 
 s = 59; 
 m -= 1; 
} 
 
if (m < 0) 
{ 
 m = 59; 
 h -= 1; 
} 
} 

var ms = ms < 10 ? ("0" + ms) : ms; 
var ss = s < 10 ? ("0" + s) : s; 
var sm = m < 10 ? ("0" + m) : m; 
var sh = h < 10 ? ("0" + h) : h; 

start = sh + ":" + sm + ":" + ss + ":" + ms; 
clock.innerText = start; 

// 清除上一次的定时器 
window.clearInterval(timer); 

// 自校验系统时间得到时间差, 并由此得到下次所启动的新定时器的时间nextelapse 
counter++; 
var counterSecs = counter * 100; 
var elapseSecs = new Date().valueOf() - startTime; 
var diffSecs = counterSecs - elapseSecs; 
nextelapse = normalelapse + diffSecs; 
diff.value = counterSecs + "-" + elapseSecs + "=" + diffSecs; 
next.value = "nextelapse = " + nextelapse; 
if (nextelapse < 0) nextelapse = 0; 

// 启动新的定时器 
timer = window.setInterval("onTimer()", nextelapse); 
} 
</script>

附加一个完整的倒计时和时间  复制即可使用  运行的结果分别是: 

天 小时 分 秒 2013年01月22日 15:44:23 星期二

<html>
<head>
<title>倒计时测试</title>
 <script src="http://event.wushuangol.com/ShopClothes/Scripts/jquery-1.4.4.min.js" type="text/javascript"></script>
 
<script language="JavaScript">
 $(document).ready(function () {

<!-- 时间必须启动 -->
 clockon();
 });

function clockon() {
 var now = new Date();
 var year = now.getFullYear(); //getFullYear getYear
 var month = now.getMonth();
 var date = now.getDate();
 var day = now.getDay();
 var hour = now.getHours();
 var minu = now.getMinutes();
 var sec = now.getSeconds();
 var week;
 month = month + 1;

 if (month < 10) month = "0" + month;
 if (date < 10) date = "0" + date;
 if (hour < 10) hour = "0" + hour;
 if (minu < 10) minu = "0" + minu;
 if (sec < 10) sec = "0" + sec;
 var arr_week = new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六");
 week = arr_week[day];
 var time = "";

 time = year + "年" + month + "月" + date + "日" + " " + hour + ":" + minu + ":" + sec + " " + week;
 $("#bgclock").html(time);

 var timer = setTimeout("clockon()", 200);

}

<!-- 隐藏脚本从旧的浏览器
var DifferHour = -1
var DifferMinute = -1
var DifferSecond = -1
var Tday1 = new Date("Feb 11, 2013 00:00:00") //**倒计时时间-注意格式
var daysms = 24 * 60 * 60 * 1000
var hoursms = 60 * 60 * 1000
var Secondms = 60 * 1000
var microsecond = 1000
function clock()

{

 var time = new Date()
 var hour = time.getHours()
 var minute = time.getMinutes()
 var second = time.getSeconds()
 var timevalue = ""+((hour > 12) ? hour-12:hour)
 timevalue +=((minute < 10) ? ":0":":")+minute
 timevalue +=((second < 10) ? ":0":":")+second
 timevalue +=((hour >12 ) ? " PM":" AM")
 var convertHour = DifferHour
 var convertMinute = DifferMinute
 var convertSecond = DifferSecond
 var Diffms = Tday1.getTime() - time.getTime()
 DifferHour = Math.floor(Diffms / daysms)
 Diffms -= DifferHour * daysms
 DifferMinute = Math.floor(Diffms / hoursms)
 Diffms -= DifferMinute * hoursms
 DifferSecond = Math.floor(Diffms / Secondms)
 Diffms -= DifferSecond * Secondms

 var dSecs = Math.floor(Diffms / microsecond)
 if(convertHour != DifferHour) document.formnow.dd.value=DifferHour
 if(convertMinute != DifferMinute) document.formnow.hh.value=DifferMinute
 if(convertSecond != DifferSecond) document.formnow.mm.value=DifferSecond

 document.formnow.ss.value=dSecs
 document.formnow.ss.value=dSecs
// document.formnow.Tnow.value= DifferHour DifferMinute + DifferSecond + dSecs

setTimeout("clock()",1000)

}

//

隐藏-->
</script>
</head>

<body onload="clock();return true" >

<!--显示出内容-->
<form name="formnow">
<input name="dd" type="text" style="border:0;" size=2>
天
<input name="hh" type="text" style="border:0;" size=2>
小时
<input name="mm" type="text" style="border:0;" size=2>
分
<input name="ss" type="text" style="border:0;" size=2>
秒
<span id="bgclock" style="float:right;padding-right:10px; padding-top:2px;text="red""></span>
</form>

<!--倒计时完毕啦-->

</body>

</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。<

Javascript 相关文章推荐
浅谈javascript的分号的使用
May 12 Javascript
浅谈时钟的生成(js手写简洁代码)
Aug 20 Javascript
用jquery获取自定义的标签属性的值简单实例
Sep 17 Javascript
谈谈对JavaScript原生拖放的深入理解
Sep 20 Javascript
详解Vue 非父子组件通信方法(非Vuex)
May 24 Javascript
激动人心的 Angular HttpClient的源码解析
Jul 10 Javascript
Vue之Watcher源码解析(1)
Jul 19 Javascript
vue实现导航栏效果(选中状态刷新不消失)
Dec 13 Javascript
深入学习JavaScript中的bom
May 27 Javascript
js逆向解密之网络爬虫
May 30 Javascript
详解vue-cli@2.x项目迁移日志
Jun 06 Javascript
vue实现简易的双向数据绑定
Dec 29 Vue.js
jQuery检查元素存在性(推荐)
Sep 17 #Javascript
用jquery获取自定义的标签属性的值简单实例
Sep 17 #Javascript
Js获取当前日期时间及格式化代码
Sep 17 #Javascript
将html页面保存成图片,图片写入pdf的实现方法(推荐)
Sep 17 #Javascript
jquery遍历标签中自定义的属性方法
Sep 17 #Javascript
jquery属性,遍历,HTML操作方法详解
Sep 17 #Javascript
详解Angular2中的编程对象Observable
Sep 17 #Javascript
You might like
慎用preg_replace危险的/e修饰符(一句话后门常用)
2013/06/19 PHP
PHP5中实现多态的两种方法实例分享
2014/04/21 PHP
php基于curl实现随机ip地址抓取内容的方法
2016/10/11 PHP
PHP中的密码加密的解决方案总结
2016/10/26 PHP
php使用curl实现ftp文件下载功能
2017/05/16 PHP
Laravel中Facade的加载过程与原理详解
2017/09/22 PHP
出现“不能执行已释放的Script代码”错误的原因及解决办法
2007/08/29 Javascript
解决extjs在firefox中关闭窗口再打开后iframe中js函数访问不到的问题
2008/11/06 Javascript
jquery text()要注意啦
2009/10/30 Javascript
TinyMCE 新增本地图片上传功能
2010/11/05 Javascript
node.js中的fs.utimes方法使用说明
2014/12/15 Javascript
纯js实现重发验证码按钮倒数功能
2015/04/21 Javascript
jQuery条件分页 代替离线查询(附代码)
2017/08/17 jQuery
JS栈stack类的实现与使用方法示例
2019/01/31 Javascript
如何使用JS console.log()技巧提高工作效率
2020/10/14 Javascript
element el-table表格的二次封装实现(附表格高度自适应)
2021/01/19 Javascript
[03:02]2014DOTA2西雅图邀请赛 让队员自己告诉你DK NAVI备战情况
2014/07/08 DOTA
[02:17]《辉夜杯》TRG战队巡礼
2015/10/26 DOTA
python求斐波那契数列示例分享
2014/02/14 Python
python使用xlsxwriter实现有向无环图到Excel的转换
2018/12/12 Python
在python中使用requests 模拟浏览器发送请求数据的方法
2018/12/26 Python
python自动化之Ansible的安装教程
2019/06/13 Python
在python中logger setlevel没有生效的解决
2020/02/21 Python
python入门之井字棋小游戏
2020/03/05 Python
Django-xadmin+rule对象级权限的实现方式
2020/03/30 Python
Python求凸包及多边形面积教程
2020/04/12 Python
英国男士时尚购物网站:Stuarts London
2017/10/22 全球购物
Radley英国官网:英国莱德利小狗包
2019/03/21 全球购物
武汉高蓝德国际.net机试
2016/06/24 面试题
人事专员职责
2014/02/22 职场文书
责任书格式范文
2014/07/28 职场文书
2019暑假阅读倡议书
2019/06/24 职场文书
详解PHP Swoole与TCP三次握手
2021/05/27 PHP
pt-archiver 主键自增
2022/04/26 MySQL
Ubuntu Server 安装Tomcat并配置systemctl
2022/04/28 Servers
CSS实现鼠标悬浮动画特效
2023/05/07 HTML / CSS