我从后端获得了时间毫秒,让他显示在以倒计时分秒的方式显示在页面上,
但是页面上显示的是一个固定的值,每次刷新之后才会显示最新的值,就是是倒计时的效果,
怎么让前台页面也能动态的倒计时
是用ajax+计时器,每一秒发送一个请求实现么?
还是有更好的优化办法?
我从后端获得了时间毫秒,让他显示在以倒计时分秒的方式显示在页面上,
但是页面上显示的是一个固定的值,每次刷新之后才会显示最新的值,就是是倒计时的效果,
怎么让前台页面也能动态的倒计时
是用ajax+计时器,每一秒发送一个请求实现么?
还是有更好的优化办法?
倒计时一般是前端写,后端返回一个固定时间,不然难道每秒要前后端交互,不说网络延迟,开销就不小。
var itvl = setInterval(function () {
// 这里你要做的事情
// 别忘了清计时器
if(时间到了) {
clearInterval(itvl);
}
}, 1000);
前面说的够多了
补充几点吧
1.记得倒计时结束后把计时器关掉,setTimeout对应clearTimeout,setInterval对应clearInterval
2.如果是重要信息记得和后台核对一次时间,事件列表循环这种机制很容易产生时间不准确(其实从异步发起请求开始九意味着时间不可能一样了,对钟问题果然哪里都存在)
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
5 回答1.9k 阅读
setInterval