使用示例:
var tim = new TimeLeft();
tim.setServerDate("2011-03-2 8:34:45"); //设置当前时间
tim.setEndDate("2011-03-2 8:55:45"); //设置结束日期
tim.setDivId("LiveClock1");
tim.clockStart();
/*** 时间倒计时函数 **/
function TimeLeft(){
this.nDate = null;
this.eDate = null;
this.divId = null;
this.DifferHour = -1;
this.DifferMinute = -1;
this.DifferSecond = -1;
this.sec_0 = 0; //要加的秒数
this.min_0 = 0; //分钟
this.hor_0 = 0; //小时
this.day_0 = 0; //天
this.moth_0 =0; //月
this.yea_0 = 0; //年
this.sec = 0; //要加的秒数
this.min = 0; //分钟
this.hor = 0; //小时
this.day = 0; //天
this.moth =0; //月
this.yea = 0; //年
//--------剩余时间参数----------
this.leftDay = 0;
this.leftHour=0;
this.leftMin=0;
this.leftSec=0;
//-----------定时器使用----------
this.sid="TimeLeft_ASBKC";
eval(this.sid+"=this");
this.divStr='0';
}
TimeLeft.prototype.setServerDate=function(serverDate){ //设置当前时间 格式: 2011-03-2 12:34:45
var dts = serverDate.split(" ");
var time1 = dts[0].split("-");
var time2= dts[1].split(":");
this.sec = parseInt(time2[2]); //要加的秒数
this.min = parseInt(time2[1]); //分钟
this.hor = parseInt(time2[0]); //小时
this.day = parseInt(time1[2]); //天
this.moth =parseInt(time1[1]); //月
this.yea = parseInt(time1[0]); //年
}
TimeLeft.prototype.setEndDate=function(endDate){ //设置服务器时间 格式: 2011-07-2 12:34:45
var dts = endDate.split(" ");
var time1 = dts[0].split("-");
var time2 = dts[1].split(":");
this.sec_0 = parseInt(time2[2]); //要加的秒数
this.min_0 = parseInt(time2[1]); //分钟
this.hor_0 = parseInt(time2[0]); //小时
this.day_0 = parseInt(time1[2]); //天
this.moth_0 = parseInt(time1[1]); //月
this.yea_0 = parseInt(time1[0]); //年
this.Tday1 = new Date(this.yea_0,this.moth_0,this.day_0,this.hor_0,this.min_0,this.sec_0); //**倒计时时间-注意格式
this.daysms = 24 * 60 * 60 * 1000;
this.hoursms = 60 * 60 * 1000;
this.Secondms = 60 * 1000;
this.microsecond = 1000;
}
//设置当前时间 年月日时分秒格式
TimeLeft.prototype.setServerDateFormat=function(year,month,day,hour,min,sec){
this.sec = sec; //要加的秒数
this.min = min; //分钟
this.hor = hour; //小时
this.day = day; //天
this.moth =month; //月
this.yea = year; //年
}
//设置到期时间 年月日时分秒格式
TimeLeft.prototype.setEndDateFormat=function(year,month,day,hour,min,sec){
this.sec_0 = sec; //要加的秒数
this.min_0 = min; //分钟
this.hor_0 = hour; //小时
this.day_0 = day; //天
this.moth_0 =month; //月
this.yea_0 = year; //年
this.Tday1 = new Date(this.yea_0,this.moth_0,this.day_0,this.hor_0,this.min_0,this.sec_0); //**倒计时时间-注意格式
this.daysms = 24 * 60 * 60 * 1000;
this.hoursms = 60 * 60 * 1000;
this.Secondms = 60 * 1000;
this.microsecond = 1000;
}
TimeLeft.prototype.setDivId=function(v){ //设置要显示的Div
this.divId=v;
}
TimeLeft.prototype.getDay=function(){ //剩余天数
return this.leftDay;
}
TimeLeft.prototype.getHour=function(){ //剩余小时
return this.leftHour;
}
TimeLeft.prototype.getMin=function(){ //剩余分钟
return this.leftMin;
}
TimeLeft.prototype.getSec=function(){ //剩余秒数
return this.leftSec;
}
TimeLeft.prototype.showTimes=function(){ //显示到页面
var timeStr ="<span style='color:#FF0000'>"+ this.getDay()+"天"+this.getHour()+"小时"+this.getMin()+"分"+this.getSec()+"秒"+"</span>";
if(this.divStr=='0'){
var mystr = document.getElementById(this.divId).innerText;
this.divStr = mystr;
}
document.getElementById(this.divId).innerHTML=this.divStr + timeStr;
}
TimeLeft.prototype.clockStart=function(){ //时间开始
this.sec = this.sec + 1;
if(this.sec>=60){
this.sec = 0;
this.min = this.min +1;
}
if(this.min>=60){
this.min = 0;
this.hor = this.hor+1;
}
if(this.hor>=23){
this.hor = 1;
this.day = this.day+1;
}
//-----如果比较和时间当前时间相同则停止
var time = new Date(this.yea,this.moth,this.day,this.hor,this.min,this.sec);
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 = this.DifferHour;
var convertMinute = this.DifferMinute;
var convertSecond = this.DifferSecond;
var Diffms = this.Tday1.getTime() - time.getTime();
this.DifferHour = Math.floor(Diffms / this.daysms);
Diffms -= this.DifferHour * this.daysms;
this.DifferMinute = Math.floor(Diffms / this.hoursms);
Diffms -= this.DifferMinute * this.hoursms;
this.DifferSecond = Math.floor(Diffms / this.Secondms);
Diffms -= this.DifferSecond * this.Secondms;
var dSecs = Math.floor(Diffms / this.microsecond);
//设置当前剩余的时间数
if(this.DifferHour<0){ //没有剩余时间
this.leftDay = 0;
}else{
this.leftDay = this.DifferHour;
this.leftHour = this.DifferMinute;
this.leftMin = this.DifferSecond;
this.leftSec = dSecs;
}
this.showTimes(); //调用更新页面方法
setTimeout(this.sid+".clockStart();",1000);
}
分享到:
相关推荐
闲着没事 发个倒计时代码 可以精确到毫秒的
<title>JavaScript倒计时 <h1 id="countdown"></h1> <script src="js/countdown.js"> ``` 在`js`文件夹中的`countdown.js`文件应该包含上述的JavaScript代码。 这个基本的倒计时功能可以适应大多数需求,但...
"等待下班js倒计时代码"是一个利用JavaScript实现的实用小工具,它允许用户自定义下班时间,并在设定的时间点给予提醒。这个功能对于提升工作生活节奏感和效率有一定帮助。 在JS特效领域,日期时间和倒计时是常见的...
JavaScript(简称JS)倒计时代码是Web开发中常见的功能,尤其在活动页面、考试倒计时、定时发布等场景中应用广泛。本教程将详细解释如何使用JavaScript编写一个简单的倒计时代码,并探讨相关的核心知识点。 首先,...
元旦倒计时代码 javascript倒计时代码及倒计时弹窗.pdf
js倒计时 JavaScript(简称“JS”)是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为开发Web页面的脚本语言而出名,但是它也被用到了很多非浏览器环境中,JavaScript基于原型编程、多范式的...
这个"带报警提示铃声的js倒计时代码"是一个利用JavaScript实现的特定功能,它能够帮助用户在倒计时结束时触发一个报警提示,通常用于活动即将开始或结束的提醒,或者是一些重要的时间节点通知。 首先,我们要理解...
前端语言(HTML+css+JavaScript + canvas)写的一个 2023 年跨年倒计时代码 倒计时日期格式:月-日-时-分-秒 也可以自定义日期格式 自定义添加祝福语等 代码时按照元旦作为计算日期 也可以按照农历新年作为日期格式
### 知识点一:精确到秒的JavaScript倒计时实现 #### 1. HTML结构设计 在HTML中,需要设计一个表单`form`和一个文本输入框`input`,用以展示倒计时结果。例如: ```html 离2010年还有: ``` #### ...
在本场景中,"等待下班js倒计时代码"指的是一个使用JavaScript编写的程序,用于显示剩余到下班时间的倒计时。这种类型的代码通常会结合服务器时间或者用户本地时间来计算距离特定下班时间(例如18:00)的剩余分钟或...
JavaScript倒计时是一种常见的网页动态效果,用于展示特定时间点的到来,例如促销活动开始、考试结束等。在网页开发中,结合CSS可以使得倒计时更具有视觉吸引力。本篇文章将详细探讨如何使用JavaScript和CSS实现一个...
元旦倒计时代码
JS倒计时代码! 值得下载看看!资源免费,大家分享!! 更多免费资源 http://ynsky.download.csdn.net/
通过这样的方式,我们可以创建一个即使在页面刷新后也能保持一致的JavaScript倒计时。这在考试系统或其他需要精确时间管理的应用中非常有用。 当然,实际应用中可能还需要考虑时区差异、用户设备时间调整等问题,...
javascript元旦倒计时代码,js元旦倒计时代码,小时 和秒钟
JavaScript(简称JS)倒计时代码是Web开发中常见的功能,尤其在网页活动、限时优惠或比赛截止日期等场景中非常实用。它允许开发者在页面上动态显示剩余时间,为用户提供实时更新的信息。 一个基本的JS倒计时实现...
JavaScript 倒计时代码详解 在本篇文章中,我们将深入探讨 JavaScript 倒计时代码的实现 principio 和应用场景。通过分析给定的代码,我们将了解到倒计时代码的基本结构、计时机制、显示...* JavaScript倒计时应用场景