我想了解如何使用Google Chrome浏览器动态更新图标,我注意到浏览器似乎限制了每秒更新图标的频率,这种情况看起来很邋..我为此做的测试页是:
http://staticadmin.com/countdown.html
这只是一个显示倒计时结果的滚动消息。我添加了一个输入字段来调整脚本每秒移动的像素数,并且我已经在谷歌浏览器中平滑地将最大值调整为每秒约5帧,我还没有在任何其他浏览器中测试它。
我的问题是最大频率是多少,有没有办法改变它,背后有什么特别的原因吗?
注意:我还注意到此值也会根据窗口焦点而变化。当浏览器的窗口没有聚焦并且返回到" max"时,它似乎降到每秒大约1次更新。当你回来时。
答案 0 :(得分:2)
事实是,Chrome(以及任何合理的浏览器)都不会期望不断变化的图标。他们甚至不会在那里显示动画(只有第一帧被冻结和显示),尽管有this feature request。你可以通过DOM改变它的事实有点像黑客。这就是为什么帧率是不可预测的,甚至还没有为此进行优化。
当标签模糊时,Chrome(和其他浏览器)会将setInterval
和朋友限制为1 Hz,这就是切换标签时动画变得更糟的原因。它不知道您的间隔是在当前可见的UI元素上运行的。
无法通过JavaScript更改此行为,也无法更改最大频率。遗憾。