<script type="text/javascript" src="${pageContext.request.contextPath }/js/jquery-1.8.3.js"></script>
<script type="text/javascript">
onload=function(){
var ordertime;
var timer;
var inputs = $(".input");
var spans = $(".span");
var nowtime;
var minutes;
var seconds;
var msg;
var size=inputs.size();
for(var i = 0;i<size;i++){
//alert(size);
ordertime = inputs[i].value;
ordertime=ordertime.replace("-","/");
ordertime=ordertime.replace("-","/");
ordertime=new Date(ordertime);
nowtime=new Date();
//alert();
maxtime = (ordertime.getTime()-nowtime.getTime())/1000+30*60;
timer = setInterval( function CountDown(){
if(maxtime>=0){
minutes = Math.floor(maxtime/60);
seconds = Math.floor(maxtime%30);
msg = "距离结束还有"+minutes+"分"+seconds+"秒";
// alert(msg);
spans[i].innerHTML=msg;
//document.getElementById("timer").innerHTML=msg;
if(maxtime == 5*30) alert('注意,还有5分钟!');
--maxtime;
}
else{
clearInterval(timer);
alert("时间到,结束!");
}
},1000);
}
};
</script>
写在onready里看看,onload可能一些html元素还没有加载
参数不对,
spans[i].innerHTML这里运行的时候i已经是size的值了,定时部分用闭包解决变量冲突问题。setInterval用setTimeout
(function(i,maxtime){
var CountDown = function(){
if(maxtime>=0){
minutes = Math.floor(maxtime/60);
seconds = Math.floor(maxtime%30);
msg = "距离结束还有"+minutes+"分"+seconds+"秒";
// alert(msg);
spans[i].innerHTML=msg;
//document.getElementById("timer").innerHTML=msg;
if(maxtime == 5*30) alert('注意,还有5分钟!');
--maxtime;
setTimeout(CountDown ,1000);
}
else{
console.log("时间到,结束!");
}
}
setTimeout(CountDown ,1000);
}(i,maxtime));