2011-07-19 14 views
2

私の$ .getJSONが停止した理由については、questionを投稿しましたが、今質問が多少広がっていると思います。HTML5キャッシュオンラインとオフラインで使用するためのJavaScriptファイル

私は(同じドメイン上の)PHP WebアプリケーションにAjaxリクエストを行うモバイルHTML5アプリを持っています。インターネットに接続している場合。 navigator.onLine == true Webアプリケーションへの$ .getJSON呼び出しを行い、応答をデバイスのブラウザのwebsql dbにローカルに格納します。

navigator.onLine == falseの場合は、jsonリクエストをスキップして、代わりにローカルでデータを取得します。私のJSONが動作し、私は正常にオフラインwebsqlストレージに格納していますが、私の問題はキャッシュマニフェストファイルを追加するときに発生します。

キャッシュする方法がわかりません。ここに私のキャッシュマニフェストがあります:

CACHE MANIFEST 

# rev 2 

CACHE: 
index.html 
app.html 
http://code.jquery.com/mobile/1.0a1/jquery.mobile-1.0a1.min.js 
http://code.jquery.com/mobile/1.0a1/jquery.mobile-1.0a1.min.css 
http://code.jquery.com/jquery-1.4.3.min.js 
js/data.js 
js/script.js 

私はcode.jquery.com/..から外部ファイルをキャッシュすることができると思います。私はそれらをオンラインとオフラインで必要とするからです。

Ericは私の前の質問に答えを投稿しました。私はJSファイルをNETWORKの下に追加するべきだと言っています。私がそれをすると、私が望むように私のJSON呼び出しが起動されます。ただし、ファイルはオフラインでは利用できません。

これは同様に動作しているようですが、私も私のCSSがロードされたオフラインない行くとき:

CACHE MANIFEST 

# rev 2 

CACHE: 
index.html 
app.html 
js/data.js 
http://code.jquery.com/mobile/1.0a1/jquery.mobile-1.0a1.min.js 
http://code.jquery.com/mobile/1.0a1/jquery.mobile-1.0a1.min.css 
http://code.jquery.com/jquery-1.4.3.min.js 
js/script.js 

NETWORK: 
* 

誰もがオフラインで使用するためのJavaScript/CSSファイルをキャッシュするためのベストプラクティスを提案することはできますか?

どうもありがとう、

ビリー

答えて

0

チェックアウトhttp://westciv.com/tools/manifestR/は、そのアプリのニーズマニフェストファイルを作成するための素晴らしいツールです。

AppCacheを使用するには、ローカルで配信するすべてのものがマニフェストファイルにリストされている必要があります。この場合、アプリが実行する必要があるJavaScript、CSS、その他のファイルをすべてオフラインで表示する必要があります。 ManifestRはあなたがそのリストを把握し、あなたのために構築するのに役立ちます。

CACHE MANIFEST 
# rev 3 

CACHE: 
index.html 
app.html 
js/data.js 
http://code.jquery.com/mobile/1.0a1/jquery.mobile-1.0a1.min.js 
http://code.jquery.com/mobile/1.0a1/jquery.mobile-1.0a1.min.css 
http://code.jquery.com/jquery-1.4.3.min.js 
js/script.js 
style.css 
images.png 

NETWORK: 
* 

マニフェストファイルは次のようになります

関連する問題