こんにちは,よろしくお願いします。
何が何だか分からなくて困っています。
IEでは問題なく動くのに,Firefoxだと関数が定義されていないとのエラーが出ます。「<関数名> is not defined 」
スクリプトは,外部ファイル化してあります。キータイプの間違いもありません。何度も確認しました。
function aaa(){
(スクリプト)
}
を
<body onload="aaa()">
のようにして呼び出しています。
いったい,何が悪いのでしょうか?
また,Operaだと,「リンク先のスクリプトを読み込むことができません」とのエラーが出ます。
元になるPHPファイルでは,
<script type="text/javascript" language="javascript" src="../javascript/AAAAA.js"></script>
のようにして呼び出しています。
もちろん,ファイルネームのタイプミスはありません。
ちなみに,スクリプトの内容は,日付関連のコードを記述しています。
試行錯誤している時に,他の日付関連のコードを実行したときに,
dayoption is not defined
というエラーが出たことがあります。
関数が存在しているのに,定義されていないと出るのは,もしかすると,日付関連の関数等の使い間違いではないかとも考えています。
使っているものは,Date()とgetYear()です。これらのうちのどちらかがFirefoxやOperaだとサポートされていないのでしょうか?
どうか御指導ください。よろしくお願いします。
No.1ベストアンサー
- 回答日時:
たぶんなんらかの凡ミスでしょうけど・・・・
firefoxでだめなら、firefoxのアドオンのfirebugで検証するのが一番です
この回答への補足
早速のお答えありがとうございました。
早速,firebugをインストールしました。
そうしたところ,
<script type="text/javascript" language="javascript" src="../javascript/AAAAA.js"></script>
で指定したAAAAA.jsを開くことができていないことが分かりました。
この 「src=」 以下にある相対参照の記述が原因のようです。
IEだとこの記述でうまくリンクして,firefoxやOperaだとリンクできないようです。
もっと,具体的に言うと,../の部分が機能せず,親ディレクトリを呼べないでいる状況のようです。
この記述をどのように訂正,すれば良いのでしょうか?よろしければ御指導ください。
No.4
- 回答日時:
・yyr446 さんの内容についてちょっと補足。
1. >charset="utf-8"
日本語コードの種類がそうとは限りませんし、
これは特に書く必要はありません。
2.>language=
これでも動作しますが、language=を使うことは推奨されていません。
出来ればtype=を使いましょう。
・ところで alert()を使う場合について説明を省略してましたが、
window.alert("Test");
のように、引数などを省略しないで記述しましょう。
(Firefoxでは引数の省略は許されないみたい。)
この回答への補足
zeeegさん,ありがとうございます。
いろいろとやってみたら,<script>要素のsrc属性の修正でJavascriptが走るようになりました。
具体的に言うと,
src="../javascript/AAAAA.js"
とあったのを
src="../../javascript/AAAAA.js"
としたら,プログラムが正常に走りました。
IEの方も矛盾なく動いています。
こんなことってあるのでしょうか?なぜこんなことが起こるのでしょうか?
No.3
- 回答日時:
まさか、と思いますが、もしかして
Webサーバー側が、.htaccessでブラウザーのユーザーエージェント
の値を見て、javascriptディレクトリーへのアクセスをIEのみに制限
している可能性(IEでしか使えないjavascriptのため)はありませんか?
<script>の書き方は、普通
<script type="text/javascript" charset="utf-8" src="../javascript/AAAAA.js"></script>
か、
<script language="javascript" src="../javascript/AAAAA.js"></script>
のどっちかが多いですが、2つ書いても動作するはず。
SRCのパスの書き方は、IEでうまくいっているなら、FireFoxで
だめというのはありえないです。
yyr446さん,ありがとうございます。
>IEでしか使えないjavascript
このようなことはないようです。alert()だけの簡単なものは,エラーが出ませんので・・・。
>SRCのパスの書き方は、IEでうまくいっているなら、FireFoxで
>だめというのはありえないです。
ですよね,でもこれを試しに直したらうまくいきました。いったいどういうことなのでしょうか?よけいな疑問がまた増えてしまいました。
No.2
- 回答日時:
凡ミスでしょうね。
質問で例示している function みたいに全角の空白文字が入っているとか
前後のscript宣言が間違ってるとか...あてずっぽうですが。
>関数が存在しているのに,定義されていないと出るのは,
>もしかすると,日付関連の関数等の使い間違いではないかとも考えています。
関数が正しく呼ばれていないのか、関数の中身の問題なのかどうかは、
関数の中身を消してalert()文などと置き換えてみたら一発で分かります。
この回答への補足
お答ありがとうございます。
No.1にも書きましたが,Zeeegさんがおっしゃるとおり,script宣言が間違っているようです。
src属性のリンクの入力の仕方,相対参照の正しい記述の仕方,絶対参照の記述の仕方などを,御教授願えればと思います。よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) bashのgrepで複数の検索、かつスクリプト内で改行する方法を教えてください。 1 2022/10/06 20:09
- JavaScript javascriptで変数を組み込みたい 2 2023/01/13 09:52
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript javascriptで入力フォームが空欄の時にアラートによるエラーを出すコードを書いています。 2 2023/06/13 17:58
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- Perl Perl の外部モジュールの利用方法 3 2022/07/10 18:34
- Excel(エクセル) Excelを開くとエラーが出る 2 2022/10/03 16:13
- Visual Basic(VBA) VBAでfunctionを利用しようとしたときに「引数は省略できません」というエラーが出ます 1 2022/10/15 16:30
- JavaScript JAVASCRIPT 2 2022/04/15 15:10
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
undefinedが表示されてしまう
-
<a href="#" …>の意味を教えて...
-
bodyにidをつける理由は何ですか?
-
openerの関係が崩れてしまった...
-
jQuery GalleryViewスライドショー
-
外部ファイルでBODYのonloadイ...
-
(Javascript)印刷するファイル...
-
インラインフレームをドラッグ...
-
フレームを解除する方法
-
wordpressでアコーディオンメニ...
-
プルダウンメニューを別ファイ...
-
相対パスと絶対パスの速度
-
twitter widgetが表示されない
-
SQLのWHEREで全てを質問する方法
-
CSSでテキストを開いてふわっと...
-
javascriptとApacheの設定
-
時間によってリンク先を変える...
-
親ウィンドウの別フレームを子...
-
AjaxでDBから取得したデータを...
-
jqueryでつぶやきを自動スライ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Vbscriptで自分自身のウィンド...
-
Cygwinでログをのこす方法
-
onbeforeunload時のwindow.open...
-
JavaScriptからVBScriptの呼び...
-
リンク先のJavaScriptを実行す...
-
javascriptでbgmを自動再生する...
-
JavaScript関数呼出し元の要素...
-
【js】attrで属性を取得する...
-
undefinedが表示されてしまう
-
「関数が定義されていない」と...
-
ASP.NET(VB2005)■ WEBページ...
-
ウインドウの後ろに隠れている...
-
表示サイズの小さいホームペー...
-
datepickerで日付の値を取得したい
-
マウスオーバー時の下線表示に...
-
毎回、ページ読み込み時に1回...
-
ウィンドウが閉じない
-
javascriptでtableの該当行を削...
-
確認ダイアログで「キャンセル...
-
JavaScript ランダムリンク+自...
おすすめ情報