real-iterval
如果你用setTimeout或setIterval实现过网页倒计时功能,你就会发现:
当电脑或者APP休眠了一段时间后,倒计时会出现问题:它比正确的时间慢了。real-iterval能解决这个问题。
当休眠的电脑被唤醒后,它会计算出正确的运行时间,你的回调函数可以据此显示正确的剩余时间,或者判断何时应该停止倒计时。
安装你可以通过pm安装real-iterval
pm istall real-itervalOR通过脚本引入它:
<script src="./build/iterval.js"></script>用法1在经过指定个数的时间间隔后停止
var timer = ew Iterval(fuctio(pass){ cosole.log(pass); // stop after 24 hours if(pass == 60*60*24){ this.stop(); };}, 1000);打印结果:
123456...86400这个例子中的 pass 是一个计数器,表示当前经过了多少个1000毫秒。
用法2设定执行次数,自动停止
// automatic stop after 6 secodsvar timer = ew Iterval(fuctio(pass){ cosole.log(pass);}, 1000, 6);打印结果:
123456这个例子中的定时器会在6秒后自动停止。
用法3显示剩余时间
var timer = ew Iterval(fuctio(pass, surplus){ cosole.log('stop after ' + surplus + ' secods');}, 1000, 6);打印结果:
stop after 5 secodsstop after 4 secodsstop after 3 secodsstop after 2 secodsstop after 1 secodsstop after 0 secods这个例子会显示距离停止还有多少秒。
用法4立即执行
var timer = ew Iterval(fuctio(pass, surplus){ cosole.log('stop after ' + surplus + ' secods');}, 1000, 6, true);打印结果:
stop after 6 secodsstop after 5 secodsstop after 4 secodsstop after 3 secodsstop after 2 secodsstop after 1 secodsstop after 0 secods这个例子与上个例子不同的地方在于,回调函数会立即被调用,而不是1秒之后。
评论