倒计时代码(服务器时间)
数据库修复中,部分文章可能暂时无法阅读。
刚刚看到一个调用服务器端时间的倒计时代码,觉得不错,例子是调用奥运开幕时间。
<!--
使用Server的时间
本程序必须放在web服务器上执行,本地执行无效!
-->
距北京奥运会开幕还剩 :<span id="TimeCounter"></span>
<SCRIPT LANGUAGE="JavaScript">
<!--
if (window.ActiveXObject){
http_request=new ActiveXObject('Microsoft.XMLHTTP');
} else if (window.XMLHttpRequest) {
http_request=new XMLHttpRequest();
}
http_request.open('HEAD', '.', false);//获取服务器时间,XHR不能跨域!!!
http_request.send(null);
var ServerDate = new Date(http_request.getResponseHeader('Date'));
var ClientDate= new Date();
var d=ClientDate-ServerDate;//计算S和C之间的时差,单位毫秒
/*定义终止时间*/
var year=2008;
var Mon=8;
var day=8;
var hour=8;
var minu=0;
var Second=0;
/*定义结束*/
var starttime = new Date(year,Mon-1,day,hour,minu,Second);
//月份是从0-11,所以要减1才能得到当前月份
function clock()
{
var today = new Date();
today.setTime(today.getTime()-d);//同步日期到服务器时间
var leave=starttime-today;
if(leave > 0)
{
var timeString="";
var day = Math.floor(leave / (1000 * 60 * 60 * 24));
leave-=day*(1000 * 60 * 60 * 24);
if(day>0)timeString+= "" + day + "天"
var hour = Math.floor(leave / (1000 * 60 * 60));
leave-=hour*(1000 * 60 * 60);
if(hour>0)
{
if(timeString!="")timeString+="";
timeString+= "" + hour + "小时"
}
var minute = Math.floor(leave / (1000 * 60));
leave-=minute*(1000 * 60);
if(minute>0)
{
if(timeString!="")timeString+="";
timeString+= "" + minute + "分"
}
var second = Math.floor(leave / 1000);
if(timeString!="")timeString+="";
timeString+= "" + second + "秒"
document.getElementById("TimeCounter").innerHTML = timeString;
}
else
{
document.getElementById("TimeCounter").innerHTML= "Time's up!";
//window.location.reload();
}
setTimeout("clock()", 1000);
}
clock();
//-->
</SCRIPT>
关联文章导读:
Related posts brought to you by Yet Another Related Posts Plugin.
发布时间: 2008年6月25日,星期三
文章类别: 博思广益 | 标签:JavaScript

我想说说 ……