2012-02-28 14 views
2

私は検索の簡単なリストを持っています。jQuery Mobile List with Search

<ul data-role="listview" data-inset="false" data-filter="true" data-iconpos="right"> 

私の問題は、それがうまくロードし、自分のコンピュータ上で上空フィルタが、私のモバイルデバイス上ではSafariが(恐ろしく遅い検索、キーボードをロックアップ)本当にひどく遅れになるということです。私はiPhone 4(iOS 5)を持っています。

リストはかなり大量(5,000または6,000)のliタグです。

誰もがこの問題を解決する良い方法を知っていますか?ちょうどつもり1-GHzプロセッサのためにあまりにも多くのDOM要素になるの

答えて

1

...あなたは、ページネーションを実装したり、データ出力は、モバイルデバイス上でうまく動作するように再考する必要があります

。本当に素晴らしいモバイル機器でさえ、8歳のデスクトップコンピュータのハードウェアを搭載していることに注意してください。

リスト項目が非常に多いので、バックエンド検索を実行して物事を蹴ってしまうのはどうですか?たとえば、ユーザーが検索タームを入力し、そのタームをサーバー側のスクリプトに送って一致する要素のリストを返すと、jQuery Mobile検索フィルターウィジェットを使用してリストをさらにフィルタリングできます。

+0

ありがとうございました。私はこのようなことを考えていたが、単純なものを見落とすことを望んでいた。 – Kyle

+0

@Kyle以前はこの問題を抱えていましたが、検索する要素の数が設定されていない場合(50を使用したと思います)、jQuery Mobile検索フィルタを使用したサーバー側の拡張ソリューションを実装しました。それは素晴らしいユーザーエクスペリエンスをもたらしました... – Jasper

+0

この1つにジャスパーに同意する必要があります - 私はページングのメカニズムを設定することを本当に見ていきます。これはJQMでマークアップされた狂気の量です。個人的には、25個のリストアイテムの後でページングを行い、可能であれば次の25個の結果をプリフェッチするので、少なくとも次のページは最初のリストの後にアクセスする準備ができています。 – imaginethepoet