JavaScriptである処理を実行中に「通信エラーが発生しました。」というメッセージのダイアログが表示されます。


ネットワークから切断されている状態でこのダイアログが発生するので、この動き自体は正常だと思います。ただ、このダイアログを出さないようにしたいので、事前にインターネットに繋がっているかどうかを確認してハンドリングしたいと考えています。

ネットワークに繋がっているかを確認するJavaScritpの実装を教えていただけますか。

なお、ブラウザの種類に依存しない実装が良いですが、もし無理ならIEで動く実装でお願いします。(今回はIEで発生している事象です。)

よろしく御願いいたします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/08/14 18:19:01
  • 終了:2006/08/19 23:30:36

回答(2件)

id:ardarim No.1

ardarim回答回数896ベストアンサー獲得回数1442006/08/15 01:23:47

ポイント35pt

ネットワークにつながっているかどうかを確認する具体的な方法はわかりませんが、エラーを出さなくする方法であれば次のような方法ではどうでしょうか。


(1)try~catch命令でエラー発生をトラップする

http://msdn.microsoft.com/library/default.asp?url=/library/e...

URLはMSDN(IE)ですが、特にプラットフォームに依存しないはずです。

(2)onerrorイベントハンドラを使ってエラー発生をトラップする

http://msdn.microsoft.com/library/default.asp?url=/workshop/...

こちらも、特にプラットフォームに依存しないはずです。

id:er7

現状try-catchでは捕まえられなかったのでonerrorを試してみます。ネットワーク情報を確認する方法があればベストなのですが、そこまでの関数は用意されていないのでしょうか。回答ありがとうございます。

2006/08/15 01:36:41
id:llusall No.2

llusall回答回数505ベストアンサー獲得回数612006/08/16 09:46:15

ポイント35pt

Ajaxのライブラリ等を使用しているのでしょうか?

以下、そのように推測して回答いたします。

(はずしていたらすみません)


「通信エラーが発生しました。」というメッセージのダイアログが表示

ということですが、


ダイアログが表示されるということはJavaScriptにてalertで表示していると思われます。

ですので、すでにライブラリ中で切断状態をトラップできているということではないでしょうか?


メッセージを表示したくないのであれば、ライブラリ中のalertをコメントアウトしたり、エラー処理を入れたりして改修すれば宜しいかと思います。


もし、自身のソースコードでの事でしたら、少々ソースを掲載されると、他の方もレスが付きやすくなるかと思います。

(<-ここで、トラップしたいのだが・・・等)

id:er7

alertされていました。ちょっと不注意でした。ご指摘ありがとうございました。

2006/08/19 23:28:43

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません