<script language="javascript">
var ot="16:10";
var nt="17:50";
var stst=/^(\d*)(?:\:)\d*/;
var sts1t=/\d*(?:\:)(\d*)/;
stst.test(ot);
at=RegExp.$1;
stst.test(nt);
bt=RegExp.$1;
alert(bt-at+"小时");
sts1t.test(ot);
at=RegExp.$1;
sts1t.test(nt);
bt=RegExp.$1;
alert(bt-at+"秒");
</script>
var ot="16:10";
var nt="17:50";
var stst=/^(\d*)(?:\:)\d*/;
var sts1t=/\d*(?:\:)(\d*)/;
stst.test(ot);
at=RegExp.$1;
stst.test(nt);
bt=RegExp.$1;
alert(bt-at+"小时");
sts1t.test(ot);
at=RegExp.$1;
sts1t.test(nt);
bt=RegExp.$1;
alert(bt-at+"秒");
</script>
var d2 = new Date("2008/04/20 16:00");
var t = 120 - (d1-d2)/(60*1000);
var hour = 0,minu = 0;
while(t >= 60)
{
hour++;
t = t - 60;
}
if(t < 10)
{
t = "0" + t;
}
if(hour < 10)
{
hour = "0" + hour;
}
//昨天十点距现在小时数
var oDate1=new Date(2008,3,22,10,0,0);
var oFunc=function(){
var oDate2=new Date();
var nTimers=oDate2-oDate1;
var nHour=parseInt(nTimers/(1000*3600));
var nMinu=parseInt((nTimers%(1000*3600))/(1000*60))
alert(nHour+" hours and "+nMinu+" minutes");
}
oFunc();
</script>
//+---------------------------------------------------
//| 比较日期差 dtEnd 格式为日期型或者 有效日期格式字符串
//+---------------------------------------------------
Date.prototype.DateDiff = function(strInterval, dtEnd) {
var dtStart = this;
if (typeof dtEnd == 'string' )//如果是字符串转换为日期型
{
dtEnd = StringToDate(dtEnd);
}
switch (strInterval) {
case 's' :return parseInt((dtEnd - dtStart) / 1000);
case 'n' :return parseInt((dtEnd - dtStart) / 60000);
case 'h' :return parseInt((dtEnd - dtStart) / 3600000);
case 'd' :return parseInt((dtEnd - dtStart) / 86400000);
case 'w' :return parseInt((dtEnd - dtStart) / (86400000 * 7));
case 'm' :return (dtEnd.getMonth()+1)+((dtEnd.getFullYear()-dtStart.getFullYear())*12) - (dtStart.getMonth()+1);
case 'y' :return dtEnd.getFullYear() - dtStart.getFullYear();
}
}
//+---------------------------------------------------
//| 字符串转成日期类型
//| 格式 MM/dd/YYYY MM-dd-YYYY YYYY/MM/dd YYYY-MM-dd
//+---------------------------------------------------
function StringToDate(DateStr)
{
var converted = Date.parse(DateStr);
var myDate = new Date(converted);
if (isNaN(myDate))
{
//var delimCahar = DateStr.indexOf('/')!=-1?'/':'-';
var arys= DateStr.split('-');
myDate = new Date(arys[0],--arys[1],arys[2]);
}
return myDate;
}
//+---------------------------------------------------
//| 日期计算
//+---------------------------------------------------
Date.prototype.DateAdd = function(strInterval, Number) {
var dtTmp = this;
switch (strInterval) {
case 's' :return new Date(Date.parse(dtTmp) + (1000 * Number));
case 'n' :return new Date(Date.parse(dtTmp) + (60000 * Number));
case 'h' :return new Date(Date.parse(dtTmp) + (3600000 * Number));
case 'd' :return new Date(Date.parse(dtTmp) + (86400000 * Number));
case 'w' :return new Date(Date.parse(dtTmp) + ((86400000 * 7) * Number));
case 'q' :return new Date(dtTmp.getFullYear(), (dtTmp.getMonth()) + Number*3, dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds());
case 'm' :return new Date(dtTmp.getFullYear(), (dtTmp.getMonth()) + Number, dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds());
case 'y' :return new Date((dtTmp.getFullYear() + Number), dtTmp.getMonth(), dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds());
}
}
function CLASS_OY_TIME(){
this.birthday = new Date("August 8, 2008 20:00:00");
this.today = new Date();
this.timepoor = (this.birthday.getTime()-this.today.getTime());
this.msperday = 24*60*60*1000;
this.day = function(){
return this.timepoor/this.msperday;
}
}
CLASS_OY_TIME.prototype.GET_DAY = function(){
var t,s,f,m;
var e_t,e_s,e_f,e_m;
e_t = this.day();
t = Math.floor(e_t);
e_s = (e_t-t)*24;
s = Math.floor(e_s);
e_f = (e_s-s)*60;
f = Math.floor(e_f);
e_m = (e_f-f)*60;
m = Math.floor(e_m);
return {
day_t:t,
day_s:s,
day_f:f,
day_m:m
}
}
CLASS_OY_TIME.prototype.SET_TIME = function(){
var $2 = document.getElementById("time_2");
var tsfm = this.GET_DAY();
if($2){$2.innerHTML = "<span>"+tsfm.day_t+"</span>天<span>"+tsfm.day_s+"</span>小时<span>"+tsfm.day_f+"</span>分<span>"+tsfm.day_m+"</span>秒";}
}
function Time(){
var a = new CLASS_OY_TIME()
a.SET_TIME()
window.setTimeout("Time()", 1000);
}
Time();
</script>
<div id="time_2"></div>