2011-10-27 13 views
1

ウェブページを作成している間に、テーブルにさらに多くの行を追加したときに、パフォーマンス(クライアント側)が大幅に低下していることに気付きました。私のテーブルの各行は同じ4-5の32x32アイコン(アクションへのリンク)と約100文字で構成されています。 10行があるときは、スクロールとjQueryアニメーションがスムーズでした。私のテーブルに100以上の行があるので(ページ設定はオプションではありません)、アニメーションは本当に遅くて荒いです。
パフォーマンスを上げるために、画像そのものを最適化するのではなくコードを最適化する方法はありますか?イメージを最適化する

今、私はタグの画像を持っています。もし私がそれらを背景イメージに変えればそれは何か変わるだろうか?ブラウザに負荷がかかりませんか?

答えて

1

画像に問題がある場合は、クライアントが各行の画像を再ダウンロードしようとしている可能性があります。画像が小さくても非常に非効率です。 Fiddlerのようなツールでこれが真であるかどうかをテストするには、ページをリロードするたびに同じリクエストがたくさんあるかどうかを確認します。

これが問題の場合は、CSS spritesを参照してください。この方法では、1つのイメージをクライアントに配信することができます。この1つのイメージは、すべての行のすべてのアイコンをレンダリングするために使用されます。

+0

私は心配していたことをお返事ありがとうございますが、問題はシステムのバックエンドなので、私にはあまり意味がありません。同じイメージがRAMに別々に保存されている場合は、ブラウザで使用するメソッドの説明が必要です。スプライトについて - 画像が一度ダウンロードされると、クライアントはマークアップ/ CSSでそれを参照している回数、または何度も保存しますか?そして、フィドラーツールに感謝し、それを調べます。 –

+0

@Vlakarados:イメージをロード/取得するために使用しているURLが一定である限り、クライアントブラウザは、イメージを一度保存​​し、要素をウィンドウにペイントするときに必要に応じて再利用できるほどスマートでなければなりません。 – Briguy37