2011-12-28 7 views
2

私は非常に忙しいUIを持っています.DOMのインタラクション(株価指数やポートフォリオを想像してみてください)がなくても絶え間なく更新されています。IEで特に減速し始めています。実際にはJavaScriptエンジンの違いを示しています。 jQueryセレクタやDOM操作などのベストプラクティスに従うのは本当に難しいですが、私はもっと多くのことができると思います。表示されているDOM要素のみを更新しますか?

私は表示されているUIの部分だけを更新したいと思います。ですから、どうにかして、ユーザーのビューポート内にあるDOM要素を更新するだけで、ユーザーがスクロールすると、スクロールが停止して表示可能なDOM要素の更新を実行する必要があります。

これは、ページに多数のイメージがあり、イメージがスクロールされて表示されている場合にのみ使用される方法と似ています。 これは複雑な目標のように聞こえますが、それが前に完了していれば不思議でした。私はそれが可能であるかどうかも分かりません。ここで

+0

あなたはhttp://api.jquery.com/visible-selector/ –

+0

は私が必要なもの厥と思ういけないjqueryの目に見えるセレクタを使用することができます。それはちょうど見える(隠されていない)。私は "このクラスのすべての要素をユーザーのビューポートに入れてください"というようなものが必要です。 – ijjo

答えて

2

確かに可能です。 onScrollイベントリスナーを、DOMを歩き回るメソッドと組み合わせて使用​​し、ビューポートにない要素をすばやく破棄したい場合があります。 DOMが表示されているかどうかを確認する方法は複数あります。私が遭遇した最高の一つは、この答えに詳述されている:

Check if element is visible after scrolling

関連する問題