0

OK の速度で動作するように見える YUI レイアウト マネージャーを使用しています。ただし、ページに<Table>約 500 行の大きなページが含まれている場合、YUIrender()関数の実行には約 1長くかかります。

レイアウトマネージャーなしで同じページを開くと、1 秒もかからずに開きます。

私の唯一の懸念はIE 7です。Firefox で試してみたところ、わずか 3 秒しかかかりませんでした。

何がそんなに時間がかかっているのかについてのアイデアはありますか? テーブルを無視するようにレイアウトマネージャーに伝えることはできますか?

4

2 に答える 2

5

私はついにそれを自分で理解しました。

秘訣は、レイアウトマネージャーが無視する必要のあるコンテンツを非表示にすることです。

呼び出す前に、ページの大きなチャンクを含むタグrender()のsetを呼び出す前に、レイアウトマネージャーで管理する必要はありません。style.display = 'none'を付けた後、通常の状態に戻しstyle.display = 'block'ます。

于 2008-10-09T14:06:26.900 に答える
0

大きなテーブルの render() メソッドに時間がかかっているということですか?

YUI DataTable には、この種の状況に特化したrenderLoopSizeプロパティがあります。最後まで待って一度にすべてをレンダリングするのではなく、X 行ごとにテーブルを DOM にレンダリングします。

var myDataTable = new YAHOO.widget.DataTable("myContainer", 
                         myColumnDefs, 
                         myDataSource, 
                        {renderLoopSize: 100}); 
于 2008-11-12T12:02:57.610 に答える