- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:<script src="http~の有無確認)
<script>タグの読込先サーバーが落ちた場合、読み込みを停止する方法はあるか?
このQ&Aのポイント
- http~の有無確認 <javascript type="text/css" src="http://****/***.js" ></script> で、めったに無いのですが、http://****/***.js のサーバーが 落ちた場合 読込先が見つからず、エラーになる可能性があります。
- 他要素 body などでの onload を使えない状態で、サーバーが落ち、読込先のファイルが 取得できない場合、サーバーが落ちている場合、この読み込みをしない 方法の アイデアは、ないでしょうか。
- 読込先 js は、共用をするので、自分のところにjsファイルを置くわけではないです。 php だと、function 関数(){ //jsファイルの読み込みが 可能かどうか できる?できない? //できたら、echo "<script type=javascript/text ・・・ //むりなら、 何もしない; } しかし javascript で やらないとだめなのです。。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
外部ファイルで以下のようなグローバル関数やオブジェクトが作られている場合、 function A(){ ; } または var A=1; そのオブジェクトがあるかどうかを調べることで対応できます。 <script src="外部ファイル"></script> <script> var A; if(!A){ //読み込み失敗の処理 //document.write('<script></script>')とか。 } </script> 関数内で調べるときは、var Aの代わりにwindow.Aかwindow['A']を調べて下さい。 調べたいファイル(<script>タグ)にdefer属性が付いている場合は、 そのスクリプトがいつ読み込まれるかわからない(通常はwindow.onloadよりも後に読み込みが完了する)ので、その場合の対処法はわかりません。 ネットワーク遅延、サーバーダウンともに厳密に調べるなら、 「関数を使いたいときにその関数が存在するか」を調べてエラー処理をするのが妥当だと思います。
お礼
ありがとうございます。 御礼が遅くなって申し訳ないです