オフラインでも web アプリを使用できるように

オフラインでも web アプリを使用できるようにしたいなら
ApplicationCache を使う
これは
キャッシュマニフェストファイルへ
オフライン時にブラウザに保存するファイルを記述する方法
こうすればブラウザにファイルをキャッシュさせ
オフラインでもwebアプリを使える
キャッシュマニフェストファイルの1行目には
CACHE MANIFEST
という文が入る
シェルスクリプトで
#!/bin/bash
とかとするのと同じ要領
キャッシュ機能は
キャッシュマニフェストファイルが更新されると
再度アプリのキャッシュが行われる
マニュフェストを更新しないと
プログラムファイルをいくら更新しても意味が無いので注意
通常はマニュフェストファイルにコメントで
バージョンをもたせる
#Version:20130430
というように
ほとんどの場合はタイムスタンプにしたり
バージョン番号で管理する
ファイルの書き方は
サーバーのファイルを編集するやり方に近い
CACHE:
というセクションへ
キャッシュさせたいファイルを記述する
書き方は
URL
ファイルの絶対パスなどで書き込む
FALLBACK
セクションには、リソースにアクセスできないときに表示するファイルを指定する

オフラインの判定

application cache の使いかたを覚えて
オフラインでも動くアプリがつくれるようになると
必要なのが
現在、オンラインなのか、それともオフラインなのか
という判定
これはオンライン判定のためのプロパティの
window.navigator.onLine
を使うことで判定できます
これを if で判別すれば
オンラインなら true
オフラインなら false
が帰ってくるのでこれで分岐させます
ソースにすると
if(window.navigator.onLine){
オンラインのときの処理
}else{
オフラインのときの処理
}
というようになります
オフラインなら以前ダウンロードしたデータを
利用して
オンラインなら最新のデータをとってくるようにすれば
オフラインで遊べるものができます