html倒计时代码原理,最全面的JS倒计时代码

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

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

HTML代码:

离2010年还有:

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();

}

// -->

第二种:某某运动会

HTML代码:

第三种:小时倒计时

HTML代码:

第四种:最简倒计时

HTML代码:

第五种:最简倒计时二

HTML代码:

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)

}

距某某开幕式还有 [] 天

第六种:Javascript倒计时器 - 采用系统时间自校验

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

00:01:11:00

/* 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);

}

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

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

倒计时测试

$(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);

}

小时

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值