JavaScript
requestAnimationFrame

document.hidden時のrequestAnimationFrameの挙動

requestAnimationFrameはページが隠れてるときは、実行されないと思っていましたが、Firefoxでは実行されてるっぽかったので、各ブラウザがどういう挙動になるか調査してみました。
ついでにsetTimeout / setIntervalもページが隠れてるときどのくらい変化するか調べました。

結果

Browser request
Animation
Frame
setTimeout
setInterval*
Chrome 70 0 約1回/秒
Firefox 63 0.5 ~ 1回/秒 約1回/秒
Safari 11 0 約1回/秒
IE11 0 変化無し
Edge 12 0 変化無し
iOS
Safari 12
0 0.01 ~ 1回/秒
Android
Chrome 70
0 約1回/秒

*setTimeout / setInterval のdelayは1000/60秒

Firefoxのみページが隠れてるときも多少実行されました。
setTimeout / setIntervalもページが隠れてるときは約1回/秒ほどのに抑えられますが、IE11とEdgeは変化なしでした。

調査ページ