切换页面导致计时器停止,JS暂停!

引:现在浏览器,除了ie8及以下的浏览器,当你切换标签页面时,浏览器会自动清除本页面的js缓存。

1、为什么?
因为现在的浏览器为了性能考虑,在你切换完选项卡之后会清除掉这里的缓存数据。这属于浏览器层面的逻辑,通过代码无法解决。

2、导致什么?
比如我们在做倒计时计时器时,当你切换页面时,原来倒计时是30秒的,回来后,还是30秒。这就起不到了倒计时的功效了。

3、怎么解决?
①放入后台任务,用websocket进行传输(这是最方便快捷的方法)
②异步解决。这个比较繁琐,但是本质上还是在后台处理,然后反馈到前端页面。
③使用监听事件visibilitychange,当监听到离开页面时,使js动画暂停,回来后继续

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值