最全面的JS倒计时代码(2)

<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>00:01:11:00</span> <input type="button" value="start countdown!"> <input type="button" value="stop countdown!"> <br> <input type="text"> <input type="text"> <script language="Javascript"> /* This notice must be untouched at all times. countdown.js v. 1.0 The latest version is available at Copyright (c) 2004 Xinyi.Chen. All rights reserved. Created 7/30/2004 by Xinyi.Chen. Web: 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 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="https://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 > <!--显示出内容--> <form> <input type="text" size=2> 天 <input type="text" size=2> 小时 <input type="text" size=2> 分 <input type="text" size=2> 秒 <spanred""></span> </form> <!--倒计时完毕啦--> </body> </html>

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wzjxdx.html