js倒计时及时间差

//求时间差

var date1=new Date();  //开始时间
var date2=new Date();    //结束时间
var date3=date2.getTime()-date1.getTime()  //时间差的毫秒数
 //计算出相差天数
var days=Math.floor(date3/(24*3600*1000))
 //计算出小时数
var leave1=date3%(24*3600*1000)    //计算天数后剩余的毫秒数
var hours=Math.floor(leave1/(3600*1000))
//计算相差分钟数
var leave2=leave1%(3600*1000)        //计算小时数后剩余的毫秒数
var minutes=Math.floor(leave2/(60*1000))
//计算相差秒数
var leave3=leave2%(60*1000)      //计算分钟数后剩余的毫秒数
var seconds=Math.round(leave3/1000)
alert(" 相差 "+days+"天 "+hours+"小时 "+minutes+" 分钟"+seconds+" 秒")

//-------------------------------------------------------------------------------------

//js倒计时

//从服务器上获取初始时间并转换为毫秒
var longCurrentDate = <%=new java.util.Date().getTime()%>; 
//目标时间
var openTime = "2016-06-14 14:52:45";
var longOpenTime = (new Date(openTime)).getTime();
//剩余时间(时间相差毫秒数)
var lastTime = longOpenTime-longCurrentDate;
//将秒数专为天数
var toDays = function(){
    if(lastTime>=1000){
            //每次自动执行一次定时器,毫秒就自动减1000毫秒(也就是计时器每秒钟执行一次,然后时间差就自动减少一秒)   
	    lastTime-=1000;
	    //计算出相差天数
		var days=Math.floor(lastTime/(24*3600*1000))
		//计算出小时数
		var leave1=lastTime%(24*3600*1000)    //计算天数后剩余的毫秒数
		var hours=Math.floor(leave1/(3600*1000))
		//计算相差分钟数
		var leave2=leave1%(3600*1000)        //计算小时数后剩余的毫秒数
		var minutes=Math.floor(leave2/(60*1000))
		//计算相差秒数
		var leave3=leave2%(60*1000)      //计算分钟数后剩余的毫秒数
		var seconds=Math.round(leave3/1000)
		var timeStr = days+"天"+hours+"时"+minutes+"分"+seconds+"秒";
		return ""+timeStr+"";
	}else{
	   clearInterval(setInter);
	   return "0天0时0分0秒";
	}
}
//定时器
clearInterval(setInter);//每次执行定时器之前先清除之前执行的定时器
//毫秒差值大于0才会执行计时函数
if(lastTime>0){
    var setInter = setInterval(function(){$("#timepiece").html(toDays());}, 1000);
}else{
    $("#timepiece").html("时间过期");
}
存放倒计时



你可能感兴趣的:(js)