Javascriptをはじめ、Ajax、jQueryの著書多数のガイドが、何かと最近騒がれているJa…
北欧好きが、愛用の北欧モノを見せ合うコミュニティ
Javascript関連情報
更新日:2003年03月15日
JavaScriptで簡単に外部サーバーの状態を調べて動作を分岐する方法です。

<img src = "http://test.game.gr.jp/about/tips/net/1/0.gif"
onerror = "this.src='http://www.fureai.or.jp/?tato/about/0.gif'">
http://test.game.gr.jp/about/tips/net/1/0.gifは存在しないので onerrorによって http://www.fureai.or.jp/?tato/about/0.gifを読みにいきます。
<img src = "http://test.game.gr.jp/about/tips/net/1/0.gif"
width = "0"
height = "0"
onerror = "alert('読み込めませんでした')">
http://test.game.gr.jp/about/tips/net/1/0.gifは存在しないので onerrorによって '読み込めませんでした'のダイアログが表示されます。 これは、相手側のサーバーが動作していない場合も同じ結果となります。 サーバー動作検知用として利用するためにwidth=0 height=0にして画像自体は表示されないようにしてみます。
<img src = "http://game.gr.jp/about/tips/net/1/1.gif"
width = "0"
height = "0"
onerror = "alert('読み込めませんでした')">
http://game.gr.jp/about/tips/net/1/1.gif(ここでは1ドットの小さな画像を使っています)は存在するので onerrorは起動せずダイアログは表示されません。
<script type="text/javascript">
<!--
function worksForErr(e)
{
//画像を読み込めなかったときの処理をここに書きます
alert("読み込みできませんでした")
}
//-->
</script>
<img src = "http://test.game.gr.jp/about/tips/net/1/0.gif"
width = "0"
height = "0"
onerror = "worksForErr(event)">
1~3までのサンプルはインラインの処理なので複数の処理をしたいときなどには ソースが煩雑でメンテナンスも不便になりやすいものです。そこで、 スクリプト処理を関数へ取り出してみます。 http://test.game.gr.jp/about/tips/net/1/0.gifは存在しないので onerrorから関数worksForErr(e)が起動し、その中のダイアログが表示されます。 ちなみに、引数のeにはイベントオブジェクトが渡されていますので必要であれば 利用することができます。人気Javascriptランキング
Powered by 価格.com
北欧好きが、愛用の北欧モノを見せ合うコミュニティ