• 締切済み

外部リンクはブラウザに依存する?

<script type="text/javascript" src="./test.js">のように testファイル を呼び出したいのですが,上手くいきません。 IE6では読み出せているのですが,Firefox2やWiiのOperaでは上手くいきません。 httpからのフルパスでもIEは上手くいきますがFirefoxやOperaでは上手くいきません。 またtest.jsを他のプロバイダに置いてフルパスで書くとIE,Firefox,Operaすべてで上手くいきます。 なんとかFirefoxやOperaでもtest.jsを呼び出す方法はないでしょうか。それともプロバイダがIE以外の呼び出しを禁止しているのでしょうか。よろしくお願いします。

みんなの回答

  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.3

#2です。 IEはhtmlですら.txtとしても中身を見てHTMLとして処理してしまう事と混同してたみたいです。 その外部ファイル(js)のURLを直接FirefoxのURL欄に入れてみるとどうなるでしょうか?(問題なければソースが表示されるはずですが) Error xxxとか出ていれば問題解決のヒントになるかもしれない。

kimacla
質問者

お礼

> #2です。 > IEはhtmlですら.txtとしても中身を見てHTMLとして処理してしまう事と混同してたみたいです。 > > その外部ファイル(js)のURLを直接FirefoxのURL欄に入れてみるとどうなるでしょうか?(問題なければソースが表示されるはずですが) > Error xxxとか出ていれば問題解決のヒントになるかもしれない。 ソースが表示されました。 なかなか上手くいかないものですね。 また,何かいい方法があったらご指導いただければと思います。 ありがとうございました。

  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.2

ご利用のサーバでjsファイルのMIMEタイプが正しく設定されていないのかもしれません。 IEはMIMEタイプが正しくなくても処理してしまいますが、他のブラウザはそうはいきません。 ブラウザにhttpヘッダを見ることができるようなプラグインを入れて確認してみるか、サーバ管理者に問い合わせてみてください。

kimacla
質問者

補足

> IEはMIMEタイプが正しくなくても処理してしまいますが、他のブラウザはそうはいきません。 大変,参考になりました。 ただ,一つ分からないことが出てきました。 JavaScriptが書かれた test.js を test.txt にかえたときの話です。 この場合,他のプロバイダのサーバーではIEはもちろんFirefox等でも読み込めました。(自分の使っているサーバーではIEだけが読み込めました) httpヘッダはテキストファイルなので text/plain です。 MIMEタイプが text/plain であるのに,なぜMIMEタイプが正しくなくないと処理できない Firefoxは test.txt を text/javascript として処理できたのでしょう? 好ましくはないですが,自分としては,使っているプロバイダのサーバーに限って外部リンクができないので,jsファイルが正常に動く外部のサーバーからリンクをはろうかとあきらめモードです。

  • notnot
  • ベストアンサー率47% (4900/10361)
回答No.1

書き方におかしいところはないですね。 htmlへの書き方以外の部分に問題があるとしかわかりません。 気になるのは、閉じタグ</script>を書いてますか?ただ書かなくても多分大丈夫ですが。

kimacla
質問者

補足

返信ありがとうございます。 </script>はつけています。 うまくいかないもんですね。