alert(starttime);//alert值:怎么成了10月,多了一个月
alert(ServerDate);最后的值月份多了一个月,小时数少了8个小时
该怎么处理?<?php
$time = getdate();
//print_r($time);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head></head>
<body>
<span id="Clock" style="font-weight: bold;"></span>
</body>
<script language="javascript">
var ServerDate = new Date(<?php echo $time['year'].",".$time['mon'].",".$time['mday'].",".$time['hours'].",".$time['minutes'].",".$time['seconds'];?>);
var ClientDate= new Date();var d=ClientDate-ServerDate;//计算S和C之间的时差,单位毫秒
var starttime = new Date(2011,9,5,12,0,0);//开始时间
var stoptime = new Date(2011,9,5,15,0,0);//结束时间
alert(ServerDate);
alert(starttime);//alert值:怎么成了10月,多了一个月
function clock()
{
var today = new Date();
today.setTime(today.getTime()-d);//同步日期到服务器时间
return false;
var leave=starttime-today;
if(leave>=1000)
{
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("Clock").innerHTML = "离活动开始还有 " + timeString;
}
else
{
if((stoptime-today)>0)
{
}
}
setTimeout("clock()", 1000);
}
clock();
</script>
</html>
alert(ServerDate);最后的值月份多了一个月,小时数少了8个小时
该怎么处理?<?php
$time = getdate();
//print_r($time);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head></head>
<body>
<span id="Clock" style="font-weight: bold;"></span>
</body>
<script language="javascript">
var ServerDate = new Date(<?php echo $time['year'].",".$time['mon'].",".$time['mday'].",".$time['hours'].",".$time['minutes'].",".$time['seconds'];?>);
var ClientDate= new Date();var d=ClientDate-ServerDate;//计算S和C之间的时差,单位毫秒
var starttime = new Date(2011,9,5,12,0,0);//开始时间
var stoptime = new Date(2011,9,5,15,0,0);//结束时间
alert(ServerDate);
alert(starttime);//alert值:怎么成了10月,多了一个月
function clock()
{
var today = new Date();
today.setTime(today.getTime()-d);//同步日期到服务器时间
return false;
var leave=starttime-today;
if(leave>=1000)
{
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("Clock").innerHTML = "离活动开始还有 " + timeString;
}
else
{
if((stoptime-today)>0)
{
}
}
setTimeout("clock()", 1000);
}
clock();
</script>
</html>
new Date()构建的时间是本地时间,我不懂php,我估计你在php中获取的小时数是基于GMT的,中国时区对于GMT是+8。