モバイルデバイス用のアプリを開発しています。jquery mobile と phonegap を使用しています (デバイスの内部機能にアクセスするため)。10 から 1000 以上のノードを持つ大きな xml ファイルがあります。基本的に、各ノードを独自のページに表示する必要があります。jquery モバイルでは、すべてのページを含む 1 つの html ファイルを作成するのが一般的です。
私はこのようなものを構築するというアイデアで遊んでいます:
<div data-role="page" id="1">JS template filled with content of node1 from xml and linking to page 2.</div>
<div data-role="page" id="2">JS template filled with content of node2 from xml and linking to page 3.</div>
XMLファイルをjavascriptで解析して、これだけ巨大なページを作ると、アプリがものすごく遅くなってしまうのではないかと心配です。私の経験では、ページが非常に長い場合、ブラウザはページをうまく処理できません。xml ファイルには、テキスト、および画像、ビデオ、オーディオファイルへのリンクを含めることができます。クライアント側で xslt を介して xml ファイルをレンダリングしようとしましたが、ほとんどの Android ブラウザーが xsl をサポートしていない (少なくとも私のブラウザーはサポートしていない) という問題に遭遇しました。アプリはインターネットに接続していなくても動作するはずなので、クライアント側で解決策を見つける必要があります。
正しい方向に私を向けることができますか?メインのhtmlファイルに数百ページが含まれていても大したことではないのでしょうか?一度に複数のページを表示しないため、xml からページを 1 つずつ取得するというアイデアもありました。しかし、既にユーザーに表示したノードを追跡する方法がわかりません。xml ファイルには、自動インクリメント識別子が含まれていません。したがって、xpath を介して特定のノードに順番にアクセスするのは難しいのでしょうか、それとも何かを見逃しているのでしょうか?
ありがとうございました!