<head>タグ内の<script type="text/javascript" src="~.js"></script>について、同じソース内に記述した<script type="text/javascript">~</script>から無効にすることは可能でしょうか?


VB(Visual Basic)2008のIEコンポーネントへ、OpenStreetMapを利用した OSM SlippyMap Generator( http://osmtools.de/easymap/ )が出力したHTML地図を表示しています。
しかしながら、日本時間2010年6月18時20分現在、OSM SlippyMap Generatorが呼び出している http://www.openstreetmap.org/openlayers/OpenStreetMap.js は、メンテナンス中で接続することができません。

このような時にエラー画面を出すよう、function drawmap()全体にTry~Catch(e)文を追加しました。
しかし、IEコンポーネントは、http://www.openlayers.org/api/OpenLayers.jsのライン:718 文字:846について、「エラー: 引数が無効です。(コード: 0)」をポップアップ画面で、ロードする度に何度も出してくるため、困っています。

<script type="text/javascript" src="http://www.openlayers.org/api/OpenLayers.js"></script>自体のスクリプトを止めればエラーが発生しないのではないか?と考えているのですが、やり方がわかりません。
対策をご存じの方、よろしくお願いいたします。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2010/06/15 22:44:16
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:koriki-WeKan No.1

回答回数342ベストアンサー獲得回数20

ポイント60pt

それはできない。


サーバサイド

<script type="text/javascript" src="http://www.openlayers.org/api/OpenLayers.js"></script>

を出力する/しないの制御をすればできる。

id:halohalolin

koriki-WeKanさん、ありがとうございます。

やはりJavaScriptからは無理ですか。

OSM SlippyMap Generatorが出力したHTMLは、VBへリソースとして持たせています。

ですので、VBでなんとか http://www.openstreetmap.org/openlayers/OpenStreetMap.js へ接続可能かどうか認識できれば

<script type="text/javascript" src="http://www.openlayers.org/api/OpenLayers.js"></script>に対する表示の有無は、容易に切り替えられますね。

ただし、問題があります。

VBからなんとか OpenStreetMap.js へ接続可能かどうか調べる方法が、今のところわかりません。

もしご存知でしたら教えてください。

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

2010/06/15 18:48:08
  • id:halohalolin
    ■WebRequest、WebResponseクラスを使ってファイルをダウンロードし表示する: .NET Tips: C#, VB.NET, Visual Studio
    http://dobon.net/vb/dotnet/internet/webrequest.html

    上記の内容を利用して
    http://www.openstreetmap.org/openlayers/OpenStreetMap.jsの有無が認識出来るか試してみます。
  • id:halohalolin
    ○WebRequest、WebResponseクラスを使ってファイルをダウンロードし表示する: .NET Tips: C#, VB.NET, Visual Studio
    http://dobon.net/vb/dotnet/internet/webrequest.html

    ○HTTPの応答時のステータスコードを取得する: .NET Tips: C#, VB.NET, Visual Studio
    http://dobon.net/vb/dotnet/internet/httpstatuscode.html

    ○@IT:連載:.NETマルチスレッド・プログラミング入門 第2回 .NETにおけるマルチスレッドの実装方法を総括
    http://www.atmarkit.co.jp/fdotnet/mthread/mthread02/mthread02_03.html

    等を参考に、接続テストをマルチスレッドでページがあるかどうか認識できたようなので
    完了とさせていただきます。ありがとうございました。

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

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

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

回答リクエストを送信したユーザーはいません