日記+コメント付きブックマーク+他人にも役に立つかもしれない情報など。
(更新情報: RSS(ツッコミ付き) / RSS(ツッコミ抜き) / LIRS)
- p (01/03)
- Thiramil (10/26)
- 久々にいまむらを食べたい通りすがり (09/28)
- Fluxadir (05/16)
- Antiprestin (11/08)
2010/10/27
_ [Web制作][JavaScript] jQuery Cycle のフレームレートを下げるには
昨日リニューアルした某サイトトップページに導入された jQuery Cycle が、貧弱 CPU だと CPU 100% 消費して重くなってしまう問題について調査した。
jQuery Cycle では jQuery.animate を呼んで透明度を変化させている。ではこの jQuery.animate のフレームレートを下げれば良いのでは、と思ったのだが、JSTweenerと、jQuery.animateのフレームレートによると、これは 77fps (13ms/f) でハードコーディングされているらしい…。何その中途半端に高いレート。
jQuery はここでしか使っていないので、ハードコーディングされている値をとりあえず 12fps (83ms/f) に変更して改善。
Celeron 420 で90%以上使用していた CPU 使用率が20%以下に、Pentium 4 2.4GHz で100%に張り付いていた CPU 使用率70%程度まで軽減された。(それでも Atom だとまだ100%行くかもしれない…)
とはいえ jQuery 本体にアドホックな変更を加えるのは気持ち悪く、いつかデグレする日が来るので、誰かもっとスマートな対応方法があったら教えてください。