現在、HTML5を使用したオフラインWebアプリケーションに焦点を当てています。ユーザーの接続をチェックして、ユーザーが現在オンラインかオフラインかを判断するための信頼できる方法が必要になるようになりました。navigator.onLineプロパティの信頼性が非常に低いことを知ったので、キャッシュマニフェストのフォールバック領域を使用する非常に優れたメソッドを見つけました。2冊の異なる本から2つの同様のソリューションを実装しました。1つは「IntroducingHTML5」(Lawson / Sharp)で、もう1つは「HTML5:The MissingManual」(MacDonald)です。これはHTTPキャッシング(私はApacheとlocalhostを使用しています)の問題だと思いますが、私はあまりよく知りません。コードを貼り付けました。ファイルは数個ですが、コードはごくわずかです。
HTML5の紹介からの適応ソリューション:http: //pastebin.com/UGsmnAtK
HTML5からの適応ソリューション-不足しているマニュアル:http: //pastebin.com/8v5ck3E6
Chrome16でテスト済み...
===欲しいもの===
- 空のキャッシュと実行中のapacheでアプリを起動します
- ボタンをクリック->アラート「オンライン」が表示されます
- Apacheを停止します
- ボタンをクリック->アラート「オフライン」が表示されます
- Apacheを開始します
- ボタンをクリック->アラート「オンライン」が表示されます
===何が起こるか===
HTML5ソリューションの紹介:-空のキャッシュでアプリを起動し、apacheを実行します-ボタンをクリックします->アラート「オンライン」が表示されます-apacheを停止します-ボタンをクリックします->アラート「オンライン」が表示されます-apacheを開始します-ボタンをクリックします->アラート「オンライン」が表示されます
HTML5:不足している手動ソリューション:-空のキャッシュでアプリを起動し、apacheを実行します-ボタンをクリックします->アラート「オンライン」が表示されます-apacheを停止します-ボタンをクリックします->アラート「オンライン」が表示されます-apacheを開始します-ボタンをクリックします->アラート「オンライン」が表示されます
他のシナリオとユースケースも同様に失敗します。本はあなたが彼らの方法を使っていつでもユーザーの接続性をチェックできることを約束します。だから私はここで何か間違ったことをしていると思います。ありがたいことに、このトピックに関するアイデアを受け入れたいと思います。
乾杯、フェリックス