1

divカスタムsを使用してテーブル セルにフレンドのプレゼンス ステータスを表示する最適化された方法は何ですか? 表示の順序は、オンライン、次にオフラインの友達がアルファベット順に並べ替えられます。

大雑把な方法の 1 つは、並べ替えられたデータ構造に基づいてブラウザーがサーバーの応答を受信したら、ajax 要求を送信し、友人のテーブル全体 (ページの残りの部分を除く) を更新/再描画することです。しかし、特定のdivをターゲットにしたり、それらを再配置したりするなど、より最適化された方法が他にもあるはずです。この方向の助けをいただければ幸いです。

4

1 に答える 1

0

カスタム div を使用してテーブル セルにフレンドのプレゼンス ステータスを表示する最適化された方法は何ですか?

友達のリストを表示したい場合は、意味のない要素の代わりにUL/要素を使用してみませんか?LIDIV

表示の順序は、オンライン、次にオフラインの友達がアルファベット順に並べ替えられます。

appendChild/insertBeforeなど (または jQuery のappend/ fe)を使用して、既存の DOM 要素を再配置できます。これによりprepend、現在の親ノードから要素が自動的に削除されてから、目的の位置に挿入されます。

したがって、ある要素からある要素#onlineへの要素の再割り当ては#offline簡単ですが、アルファベット順も必要なので、前後に挿入する要素の位置を事前に把握する必要があります。

しかし、これらのリストが大きくなりすぎないのであれば、それを避けて、リスト全体をサーバーから受け取った新しい (ソートされた) データに置き換えるだけでよいと思います。正しくソートされた挿入位置を把握するための要素は、ブラウザに全体を一度に再構築させるよりも実際には安価です。

于 2013-04-15T11:42:59.400 に答える