これは私が問題を解決した方法です。私のマニフェストファイル
CACHE MANIFEST
# Version 0.1
CACHE:
# Minimised Styles
/css/style.0.1.min.css
# Minimised JavaScript
/js/script.0.1.min.js
FALLBACK:
//offline.html
NETWORK:
*
オフラインが今だものだけをキャッシュする方法を、今/offline.html(キャッシュから)
に行くときmydomain.com/に行くノートすべてマニフェストファイルには、mydomain.com/というオンラインページは含まれていません。
mydomain.com/
<iframe src="/offline.html" style="display: none;"></iframe>
であなたのページの一番下に、次のiframeを入れて、offline.htmlにmanifest="myapp.appcache"
を置きます。
これは、mydomain.com/が読み込まれると、(ページにマニフェスト属性がないため)キャッシュされません。ブラウザはiframe経由でoffline.htmlを取得し、HTML属性が存在するため、offline.htmlページを含め、マニフェストファイルの指示に従って、キャッシュしたいものを追加します。
最初のページの読み込みではオーバーヘッドだけが表示されますが、iframeは余分なHTTPリクエストを行いますが、一度キャッシュされるとキャッシュから取り除かれるため、大きな問題にはなりません。
まだHTML5の新機能ですが、マニフェストを含むページのキャッシュを防ぐための明確な方法がないことに驚いています。 –
うん、私も。マニフェストファイルがより影響力があって、あなたが宣言したものだけがキャッシュされるならば、私はそれを好みました。ページにリンクしてはいけません。それは単に隠された機能です。 – Greg
私の最初の考えは「ネットワークに追加:セクション」でしたが、いくつかのテストの後ではこれはうまくいきません(少なくともIEではうまくいきませんでした。それは明らかに私の意見では間違っている - 明示的に宣言されているものは、常にデフォルトの動作を上書きする必要があります。私はまだこのような問題のためにオフラインのものを使用することについては非常に暫定的です。 – Morvael