> 文档中心 > js倒计时功能实现(关闭页面之后也可运行)以及ios时间显示不正常处理

js倒计时功能实现(关闭页面之后也可运行)以及ios时间显示不正常处理

在开发中经常会用到倒计时的功能,普通一般的倒计时我们可以使用setTimeout或者setInterval

这两种方法,这两个就不过多介绍了,网上都可以查到。

但是这两个方法的弊端在于页面关闭时不会触发,现在我们想要的效果就是有点像消息队列的效果,在页面关闭时倒计时方法也在运行,到一定时间时触发里面的方法体:代码如下

//js代码段var ctime = "${askOrder.djTime}"//定义倒计时方法function daojishi(ddId) {if(flag == "true"){return false;}var time;var second;    var djs = setInterval(function () {  t = 60 - parseInt(((new Date() / 1000) - ctime/1000) / 60);   //剩余分钟数  var s = 60 - parseInt(((new Date() / 1000) - ctime/1000) % 60); //剩余秒数  if (s == 60) {     s = 0;     t = t + 1; } if (t <= 0 && s= 10 ? t: "0"+t;// time = time/1000/60/60;  second =s>=10?s:"0"+s;$("#close").text("等待支付"+time+":"+second+"后订单自动关闭");   }, 1000);   }

说明:第一段代码是从后台请求回来的时间信息

特别注意:如果你开发的应用要在ios系统上运行的话一定要将后台返回的时间进行二次处理,将返回的时间如下处理

ctime = ctime.replace(/-/g,"/");ctime = new Date(ctime);//这一段代码是将返回的时间转一下格式,格式如果正确的话可以不应写