| |
最終更新日: |
前へ | 目次 | 次へ |
---|
一般的に 「IE は NN 程パフォーマンスが良くない」と言われますが、 本当に良くないのでしょうか、 また、良くないとすればどの程度良くないのでしょうか。
軽いページにしようと思って JavaScript で作成しても、 結局重いページになるのも困るので、その特質を研究してみましょう。
- ●レイアの初期表示
一般的にレイアの生成方法には BODY部に埋め込む場合と onLoad時に直接生成する方法の2通りあります。
そこで、HEAD部の最初と onLoad 処理完了までの時間を Dateメソッドで計測してみましょう。
No. 測定項目 NN4 IE4 IE5 1. 空白のページ 23 25 77 2. DIVタグでレイアを 100個記述 271 104 112 3. onLoad後レイアを100個生成 165 1089 166 4. ケース3.+document.write 1203 1057 159
- ※
- NN4 : Netscape Communicator 4.7[Ja]
- IE4 : Internet Explorer 4.01(Ver.4.72.3612.1713 + SP2;Q234680)
- IE5 : Internet Explorer 5.0 (Ver.5.00.2614.3500)
- 数値の単位は msec で、各項目を10回測定した平均値
- ※
- このテストを行ったスクリプト
- http://www.din.or.jp/~hagi3/JavaScript/JSTips/NGW/No14/index.htm
各ブラウザの数値を見ると、NN4 ではやはり document.write が遅いためか、 ケース4 の数値が極端に悪いです。 IE4 では HTML に DIVタグを記述してレイアを生成する限り NN4 以上の時間で 処理されているようです。 IE5 に至っては初期表示に多少時間がかかるものの全てのケースで 他のブラウザと同等か、それを凌駕しているように見えます。
これは、今まで言われてきたことを考えると少し驚く数値です。
また IE4 と IE5 を比較すると 直接レイアを生成するケースでの性能向上が目立ち、 直接タグを記述した場合と殆ど変わりません。 これは、IE5 で DIV オブジェクトや style オブジェクトの仕様変更の成果と思われます。 オドロキです。素晴らしい。
... 然し、チョット待って下さい。上の数値だけで見ると NN と同等か それ以上の値ですが、実際にはそのようには感じません... 何故でしょう。
そこで、実際の表示を見てみましょう。
- ●IE が遅く感じる理由
... どうやら、NN では DIVタグ を処理する毎に、 また、レイアを1つ生成する毎に描画処理がなされ、 段階的に表示されるように見えますが、IE では描画処理の優先は相当低いようで、 一連の処理が完了するまで描画されません。
つまり、「フェードイン」( 古典的テクニック f(^^; )のように ループ処理による表現手法は IE4以降では効果がなく、 onLoad イベント後に setTimeout で難しく行う必要があります。
( パフォーマンスを上げた恩恵を被るには多少の犠牲がつきもの、 というところでしょうか )ちょっと話が脱線しました。 f(^^;;
... そうそう、何故 IE が遅く見えるか、ですね。はい。一連の処理が完了するまで、なんのアクションもないと言うことは、 待ち時間が長いと感じる要素でもあります。
あと、実際の計測が難しいので、測定はしていませんが、 ステータス領域に表示される残り読込みファイル数の動きを見ていると、 画像などのファイルの読込みの並行処理性が低い印象があり、 全てのコンテンツを読込むのに、NN 以上の時間がかかっているようにも見えます。
( つまり「何故か」は良くワカランってとこですね。ハイ。 f(^^; )んてことで、初期表示のパフォーマンスはここまで、次回は動的な要素に関 するパフォーマンスを予定していますデス。 ハイ。 f(^^;
前へ | 目次 | 次へ |
---|
Copyright(c) 1999 ShinSoft |