5

CPUとWebKitが弱い組み込みハードウェアでJavaScript/HTML駆動のユーザーインターフェイスを設計しています。

パフォーマンスは理想的ではありません。特に、主観的で変化する意見ではなく、実際のパフォーマンスに関するハードデータを取得するために、リフローイベントとリペイントイベントのタイミングを調整したいと思います。

WebKitはリフローとリペイントをイベントハンドラーの後に延期するため、前後の通常の「getTime()」を使用したタイミングは機能しません。

Speed Tracerでアプリのプロファイリングを試しましたが、計算が非常に安価で、リフローイベントがPCハードウェアに表示されません。ただし、リフロー/リペイントに重点を置いたツールはまだ役立つと思います。

このためのハードデータを取得する方法に関するヒントはありますか?

4

2 に答える 2

2

これらのリンクが役立つ場合があります。JPの誰かが、geckoのリフローをうまく視覚化する方法を見つけました:http: //blog.mozilla.com/gen/2009/04/09/how-to-make-your-own-gecko-reflow-ビデオ/

残念ながら、これにはカスタムFirefoxビルドが必要です。ここでの説明:https ://developer.mozilla.org/En/Simple_Firefox_build

于 2011-04-25T20:50:35.100 に答える
1

ドキュメントの高さを取得するようなことを行うと、リフローが強制されます。たぶん、これをgetTime()と組み合わせることができます。

例えば:

var t1, t2;
t1 = new Date().getTime();

// Do some DOM manipulation

// Force reflow
document.body.offsetHeight;

t2 = new Date().getTime();
console.log(t2 - t1);
于 2011-01-18T08:55:39.153 に答える