gpt4 book ai didi

Android 上下文切换中的 javascript settimeout

转载 作者:行者123 更新时间:2023-12-03 11:16:19 24 4
gpt4 key购买 nike

在 JavaScript 中,我反复使用 setTimeout 来重绘 HTML5 Canvas 。

function doDraw() {
drawOnCanvas();
setTimeout(doDraw, 20);
}

我在 Android 浏览器上遇到问题。 (也许在 iOS 上,我还没有测试过......):1.一切正常2.我按下android“home”按钮并执行其他操作3. 我回到浏览器。4. 问题:setTimeout 没有安排再次执行。

所以我的屏幕刷新循环停止了,游戏就“死了”。

编辑:现在,我继续调查。结果 setTimeout 仍然有效。真正的问题是 Canvas 从屏幕上消失,我绘制的任何内容都没有显示。 Canvas 只是空白。

最佳答案

对于渲染循环,始终建议使用 requestAnimationFrame 因为它确切地知道何时安排回调,即完成浏览器重绘的最佳时间段。通过使用setTimeout,您将跳过帧,这将导致严重的卡顿动画

就问题而言,您可以在文档加载时重新启动循环

window.onload = function() {doDraw();}

我希望这能起作用。

关于Android 上下文切换中的 javascript settimeout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27331187/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com