一个页面显示多个倒计时,主要用于电子商务网站
<script>
function ReTime(){
this.ID = document.getElementById(arguments[0]);
if(!this.ID)
{
alert("您要设置的 " + arguments[0] + " 初始化错误\r\n请检查标签ID设置是否正确!");
this.ID = -1;
return;
}
this.StartTime = new Date().valueOf();
this.Finish = "00:00:00:00";
this.TimerID;
if(typeof arguments[1] == "number" || typeof arguments[1] == "string")this.StartTime = arguments[1];
if(arguments.length >= 1)this.Start();
}
ReTime.prototype.Start = function()
{
var Obj = this;
var RunTime=0;
Obj.Begin = function(){
RunTime++;
var nMS = Obj.StartTime*1000-RunTime*10;
var nD = Math.floor(nMS/(1000*60*60*24));
var nH=Math.floor(nMS/(1000*60*60))%24;
var nM=Math.floor(nMS/(1000*60)) % 60;
var nS=Math.floor(nMS/1000) % 60;
var nms=Math.floor(nMS);
// var c=new Date();
// var nQ=c.getMilliseconds();
// if(nQ<10)//因为毫秒为一位数时只占一个字符位置,会让毫秒二字变动位置
// {
// nQ="00"+c.getMilliseconds();
// }
// if(nQ>=10 && nQ<100)//因为毫秒为两位数时只占两个字符位置,会让毫秒二字变动位置
// {
// nQ="0"+c.getMilliseconds();
// }
Obj.Finish ="剩余"+nD+"天"+ nH+"时"+nM+"分"+nS+"秒";
if(nms<0){Obj.Finish = "已结束";window.clearInterval(Obj.TimerID);}
Obj.ID.innerHTML = Obj.Finish;
}
Obj.TimerID = window.setInterval(Obj.Begin,10);
}
new ReTime("time-<?php echo $onegoods['id'] ?>","<?php if ($onegoods['start']-time()>=0){
echo $onegoods['start']-time();
}else{
echo $onegoods['end']-time();
}?>");
</script>
参数说明:
1.DOM元素的选择器。
2.倒计时的时间