当我最小化浏览器窗口时,脚本停止。如何解决?

时间:2015-07-22 07:28:43

标签: javascript css html5

情况如下:有一个单窗口应用程序(带旋转卷轴的游戏),如果运行应用程序的浏览器选项卡不会失去焦点,则该应用程序运行良好。但有必要最小化浏览器窗口(或切换到另一个选项卡),然后返回,然后应用程序停止。这不会立即发生,而是发生在不同的时间段(从几秒钟到几分钟),以及相同的旋转周期。使用requestAnimationFrame()构建的动画。 如何解决这个问题?

var lastTime = Date.now();
function main() {

  var now = Date.now();
  var dt = Math.min((now - lastTime), 20) / 1000.0;

  update(dt);
  render();
  lastTime = now;

  requestAnimationFrame(main);

}

1 个答案:

答案 0 :(得分:1)

问题解决如下:" requestAnimationFrame"取而代之的是" setTimeout",它在web-Worker(https://github.com/turuslan/HackTimer)中运行