我的问题是这样的,
Tday[BB] = new Date("{$group_buy.end_time}");
返回的值是Tday[BB] = new Date("1304668800");
这个日期格式是不能执行倒数的,
请问如果将 1304668800 转换成 ('M d, Y H:i:s')再来倒数呢?
程序不是我写的,所以只能从javascript 入手<script type="text/javascript">
var BB = new Array();
var Tday = new Array();
var daysms = 24 * 60 * 60 * 1000
var hoursms = 60 * 60 * 1000
var Secondms = 60 * 1000
var microsecond = 1000
var DifferHour = -1
var DifferMinute = -1
var DifferSecond = -1
function clock(BB)
{
var time = new Date()
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 = DifferHour
var convertMinute = DifferMinute
var convertSecond = DifferSecond
var Diffms = Tday[BB].getTime() - time.getTime()
DifferHour = Math.floor(Diffms / daysms)
Diffms -= DifferHour * daysms
DifferMinute = Math.floor(Diffms / hoursms)
Diffms -= DifferMinute * hoursms
DifferSecond = Math.floor(Diffms / Secondms)
Diffms -= DifferSecond * Secondms
var dSecs = Math.floor(Diffms / microsecond)
if(convertHour != DifferHour) a="<font color=red>"+DifferHour+"</font>天";
if(convertMinute != DifferMinute) b="<font color=red>"+DifferMinute+"</font>时";
if(convertSecond != DifferSecond) c="<font color=red>"+DifferSecond+"</font>分"
d="<font color=red>"+dSecs+"</font>秒"
if (DifferHour>0) {a=a}
else {a=''}
document.getElementById("leftTime"+BB).innerHTML = a + b + c + d; //显示倒计时信息
}
</script>
<p class="time">距离结束:<em><span class="time" id="leftTime{$group.group_id}">{$lang.please_waiting}</span>
</em></p><script type="text/javascript">
BB="{$group.group_id}"
Tday[BB] = new Date("{$group_buy.end_time}");
window.setInterval(function()
{clock(BB);}, 1000);
</script>
Tday[BB] = new Date("{$group_buy.end_time}");
返回的值是Tday[BB] = new Date("1304668800");
这个日期格式是不能执行倒数的,
请问如果将 1304668800 转换成 ('M d, Y H:i:s')再来倒数呢?
程序不是我写的,所以只能从javascript 入手<script type="text/javascript">
var BB = new Array();
var Tday = new Array();
var daysms = 24 * 60 * 60 * 1000
var hoursms = 60 * 60 * 1000
var Secondms = 60 * 1000
var microsecond = 1000
var DifferHour = -1
var DifferMinute = -1
var DifferSecond = -1
function clock(BB)
{
var time = new Date()
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 = DifferHour
var convertMinute = DifferMinute
var convertSecond = DifferSecond
var Diffms = Tday[BB].getTime() - time.getTime()
DifferHour = Math.floor(Diffms / daysms)
Diffms -= DifferHour * daysms
DifferMinute = Math.floor(Diffms / hoursms)
Diffms -= DifferMinute * hoursms
DifferSecond = Math.floor(Diffms / Secondms)
Diffms -= DifferSecond * Secondms
var dSecs = Math.floor(Diffms / microsecond)
if(convertHour != DifferHour) a="<font color=red>"+DifferHour+"</font>天";
if(convertMinute != DifferMinute) b="<font color=red>"+DifferMinute+"</font>时";
if(convertSecond != DifferSecond) c="<font color=red>"+DifferSecond+"</font>分"
d="<font color=red>"+dSecs+"</font>秒"
if (DifferHour>0) {a=a}
else {a=''}
document.getElementById("leftTime"+BB).innerHTML = a + b + c + d; //显示倒计时信息
}
</script>
<p class="time">距离结束:<em><span class="time" id="leftTime{$group.group_id}">{$lang.please_waiting}</span>
</em></p><script type="text/javascript">
BB="{$group.group_id}"
Tday[BB] = new Date("{$group_buy.end_time}");
window.setInterval(function()
{clock(BB);}, 1000);
</script>
Date对象在使用前,必须先使用new指定实例化一个变量,然后才可以用该变量调用相关函数.我们使用
string函数时,需把字符串放在一个变量,才能对这个字符串变量使用string函数,同样,我们Date对象
函数的使用,也必须把一个时期放在一个变量中,也就是对象实例化语法:
var myDate=new Date();//获取当前时期放到变量中.
var myDate=new Date(年,月,日);//获取指定年月日放入变量中,其它的时分秒均为0
var myDate=new Date(年,月,日,时,分,秒);
myDate.函数(); getYear();获取年
getMonth();获取月
getDate();获取当前月第几日
getDay();获取星期几
getHours();//获取小时
getMinutes();//获取分钟
getSeconds();//获取秒
getTime();//获取毫秒getYear()方法获得年份
实例
var date=new Date();
alert(date.getYear());getMonth()方法获得月份.
实例:
var date=new Date();
alert(date.getMonth());
注意:1月至12月所对应的值分别为0至11. getDate()方法
获取当日号数
实例:
var date=new Date();
alert(date.getDate()); 输出年月日:
var newYMD=new Date(),newYear,newMonth,newDate;
newYear=newYMD.getYear();
newMonth=newYMD.getMonth()+1;
newDate=newYMD.getDate();
alert(newYear+"年"+newMonth+"月"+newDate+"日"); getDay()方法
说明:获取星期几
实例:
var myDate=new Date();
var day=myDate.getDay();
注意:星期日至星期六所对应的值分别为0至6那么我们可以用switch case 进程转换var newYMD=new Date(),newYear,newMonth,newDate,newDay;
newYear=newYMD.getYear();
newMonth=newYMD.getMonth()+1;
newDate=newYMD.getDate();
newDay=newYMD.getDay();
switch(newDay){
case 0:newDay="星期天";break;
case 1:newDay="星期一";break;
case 2:newDay="星期二";break;
case 3:newDay="星期三";break;
case 4:newDay="星期四";break;
case 5:newDay="星期五";break;
case 6:newDay="星期六";break;
}
alert(newYear+"年"+newMonth+"月"+newDate+"日"+newDay); getHours()方法
一、返回小时。
二、实例:
var myDate = new Date(2006, 6, 10, 14, 16, 20);
var hours = myDate .getHours();getMinutes()方法一、返回分钟数。
二、实例:
var myDate = new Date(2006, 6, 10, 14, 16, 20);
var minutes = myDate .getMinutes();getSeconds()方法一、返回分钟数。
二、实例:
var myDate = new Date(2006, 6, 10, 14, 16, 20);
var seconds = myDate .getSeconds(); 得到年月日时分秒:var newYMD=new Date(),newYear,newMonth,newDate,newDay,newHours,newMinute,newSecond;
newYear=newYMD.getYear();
newMonth=newYMD.getMonth()+1;
newDate=newYMD.getDate();
newDay=newYMD.getDay();
switch(newDay){
case 0:newDay="星期天";break;
case 1:newDay="星期一";break;
case 2:newDay="星期二";break;
case 3:newDay="星期三";break;
case 4:newDay="星期四";break;
case 5:newDay="星期五";break;
case 6:newDay="星期六";break;
default:alert("系统出错");break;
}
newHours=newYMD.getHours();
newMinute=newYMD.getMinutes();
newSecond=newYMD.getSeconds();
alert(newYear+"年"+newMonth+"月"+newDate+"日"+newDay+" -- "+newHours+"点"+newMinute+"分"+newSecond+"秒"); getTime()方法
返回从1970年1月1号到当前时间以来所积累的毫秒总数实例:计算两个时间相差的天数:
var beginDate=new Date(2009,1,1).getTime();//这里的1代表2月
var endDate=new Date(2009,1,28).getTime();
var day=((endDate-beginDate)/1000/60/60/24);
//相减得到两个时间相差的毫秒数,除以1000得到相差毫秒数,除以60得到相差的分钟,再除以60得到相差的小时,最后除以24得到天数
var ts=1304668800;//直接用1304668800去计算倒计时即可,不必转换成日期格式了
var days = parseInt(ts/(1000 * 3600 * 24));//还剩下多少天
ts = ts - (days * 1000 * 3600 * 24);//减去天数,然后再计算余数有多少个小时
var hours = parseInt(ts/(1000 * 3600));//还剩下多少小时
ts = ts - (hours * 1000 * 3600);//减去小时数
var minutes = parseInt(ts/(1000 * 60));//剩下多少分
ts = ts - minutes * 1000 * 60;//减去分
var seconds = parseInt(ts/1000);//剩下多少秒
1.将var Diffms = Tday[BB].getTime() - time.getTime()
改为:var Diffms = Tday[BB- time.getTime()2.将Tday[BB] = new Date("{$group_buy.end_time}");
改为:Tday[BB] = {$group_buy.end_time};