IE关怀哥:停电对setInterval频率的影响

在炎热的夏季正在办公,如果暂时停电了,正在吹空调的我们可能会慢慢觉得热燥,但大部分用笔记本的屌丝来说,没什么影响,该写代码写代码,该写文档还写文档。

不过,在停电的时间里,一件诡异的事却在这短短几分钟里遇到了:用IE9测试 JavaScript 代码的时候,发现setInterval的频率递减到了60帧/秒。

这在老版本的IE上面是再正常不过了。不过对于与时俱进的IE9来说,似乎是低了不少。记得IE9的setInterval可以达到200多的fps,与其他的主流浏览器不相上下。为何现在又回到经典的60fps了呢,难道是在用ie8的内核?一番清理之后,仍然没有变化。。。

这时电来了。没做任何变动,测试网页的fps居然又莫名其妙的回到了200+。测试代码非常简单,没有任何异议。

var i = 0;
setInterval( function(){ ++i }, 1 );
setInterval( function(){ document.title = 'FPS:' + i; i = 0}, 1000 );

难不成是电源在做鬼?果断拔掉笔记本电源,伴随着屏幕微微一暗,测试页面的fps又降到了60fps!

还真是电源的原因~ 打开控制面板的电源配置,一番查找后终于发现了:

IE哥哥:停电对setInterval频率的影响

原来是微软希望给我们多省点电。。。真是煞费了这番苦心~

另外在多嘴一句: Chrome和Firefox这些浏览器在未激活状态,setInterval的fps都会降到1,但是IE还是很坚挺,继续保持60+的fps,尼玛。。这发现和上面说的微软给省点自相矛盾啊。。

相关阅读