javascript - 传递给 requestAnimationFrame 调用的回调的时间错误

标签 javascript console.log requestanimationframe

我正在使用一个简单的 requestAnimationFrame 循环,它在 DOM 创建后立即开始。 我需要使用传递给回调的时间参数,但我注意到在前几帧中时间是错误的。这是我在 firefox 上运行此代码时发生的情况:

function loop(time) {

    console.log(time);

    // do something with time to animate the canvas 

    requestAnimationFrame(loop);
}

requestAnimationFrame(loop);

console

我可以用一个简单的条件跳过前 3 个帧,但为什么会这样?

最佳答案

这是一个 Firefox bug ,这是因为他们在 will-navigate 状态下清除控制台,而不是在 navigated 状态下清除控制台。

所以实际上,您可能会在下一个 session 中保留在这两种状态之间发生的日志,但这只是在控制台中,您的代码看不到这些。

关于javascript - 传递给 requestAnimationFrame 调用的回调的时间错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59365474/

相关文章:

javascript - [Ruby on Rails] 找不到类型为 'jquery-ui/autocomplete' 的文件 'application/javascript'

javascript - 我如何估计我的 gzip 脚本的大小?

javascript - 我的 JavaScript 代码为 getElementById 返回 null

javascript - 以不同的速率在 Canvas 上绘制图像

jQuery animate() 平滑

javascript - 如何在不支持 requestAnimationFrame 的浏览器中忽略 requestAnimationFrame

javascript - 如何在 getjson 调用结束时显示数组内容?

javascript - JS函数声明末尾加分号,为什么jshint提示错误

javascript - 将 console.log 值分配给变量

JavaScript:console.log() 生成数字而不是字符