御形封灵 2023-06-01 10:48 采纳率: 100%
浏览 38
已结题

setInterval 会在切换页面一段时间后暂停

浏览器页面A中初始化定时器,切换到页面B后会执行一段时间然后暂停,返回页面A后定时器会继续执行。
记当前页面为A,通过script引入一个含有定时器的脚本。

img

可以看到,页面A脚本加载完成后,初始化了一个setInterval ,并开始定时执行。

img


img

但是当切换到页面B后,定时器会持续执行一段时间,然后暂停。此时若切换回A,定时器会立刻开始执行。

疑惑点在于切换页面的时候定时器出现了暂停的效果。

当前代码环境和测试结果:
1、切换页面不牵扯到任何 对focus blur unload的处理,也不曾监听页面状态变化。
2、clearInterval 会直接清除定时器,而且在切换页面过程中不曾重新初始化定时器,达不到当前暂停的效果。
3、如果重新写个简单的页面对 setInterval进行测试,在切换页面的时候定时器并不会暂停。

  • 写回答

2条回答 默认 最新

  • 御形封灵 2023-06-01 11:01
    关注

    甚至在定时器暂停之后直接控制台添加定时器,也不会执行

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 6月2日
  • 已采纳回答 6月2日
  • 创建了问题 6月1日

悬赏问题

  • ¥15 django5安装失败
  • ¥60 ios系统storm sniffer 写入http规则加密如何破解?
  • ¥15 Java与Hbase相关问题
  • ¥15 后缀 crn 游戏文件提取资源
  • ¥15 ANSYS分析简单钎焊问题
  • ¥20 bash代码推送不上去 git fetch origin master #失败了
  • ¥15 LOL外服加入了反作弊系统,现在游戏录像rofl文件离线都无法打开
  • ¥15 在centos7安装conda
  • ¥15 c#调用yolo3 dll文件获取的数据对不上
  • ¥20 WPF 如何实现多语言,label 和cs(live Charts)中是否都能翻译