• 締切済み

外部JSファイルの書き方で・・・

午後にも同じ質問をしたのですが、 http://oshiete1.goo.ne.jp/kotaeru.php3?q=1933867 訂正がありましたので、質問し直します。すみません。 外部JSファイルを作りましたが、なにも返してきません。 リンクにマウスが乗るとガイドメッセージが出るスクリプトと、雪が降るスクリプトを同じページに書いたのですが、ガイドメッセージには何の反応もなく、雪のほうはちゃんと動いていたので、てっきり呼び出しはできていると思い込んでいたのですが・・・ 雪のほうの外部ファイルのスクリプトを試しに削除してみたら、まだ動いていました・・・ なくても動くらしかったです。 外部ファイルの書き方を説明されているサイトさんから、簡単なスクリプトをお借りしてコピペしましたが、私がやるとどうしても動かないです。 ちなみに、スクリプトはこんなふうに書いています。 //<!-- 外部ファイル内--> function a() { alert("Oh!"); } <!-- HTML内 --> <head> <script type="text/javascript" src="フォルダ名/ファイル名.js"></script> </head> <body> <form> <input type="button" value="click" onClick="a()"> </form> </BODY> 私のファイルではウンともスンともいいません。 なぜだか見当もつきません。 どなたかお助けください・・・

みんなの回答

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

>「@charset "shift_jis"」 コレは、イレギュラーです。 charsetを指定する場合、 <script type="text/javascript" src="フォルダ名/ファイル名.js" charset="Shift_JIS"></script> の様に指定します。 読み込むページと同じ場合は、必要ないと思います。 >mysrc=document.getElementById("pp"+k).src >has no properties id が pp+(kの内容の文字列) の要素に src プロパティが無いといっています。

nakkiy
質問者

お礼

ご回答いただきありがとうございました。 解決しました。 原因はキャッシュにあったようです。 リロードしたら動くようになりました。 というわけで、いきなりですが締め切ります。 おさわがせしました(T-T)

nakkiy
質問者

補足

ご回答ありがとうございます。 直しましたが外部ファイルを呼び出せないのは相変わらずです。 普段使っているソフトを変えてメモ帳で作ってみましたがそれも関係ないようです。 ブラウザもIEとネスケとFirefoxとオペラで試しましたがどれでも呼び出せていません。 ブラウザのJSの有効もチェックしてあります。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

特に問題があるようには思えません。(前のリンクのスクリプトについても) ページ内に記述して動くが、外部スクリプトにすると動かないということから、ファイルが読込できていないのではないかと思います。 Firefox では、javascript のエラーチェックができますからそういうものでチェックすると良いと思います。

nakkiy
質問者

お礼

ご回答いただきありがとうございました。 解決しました。 原因はキャッシュにあったようです。 リロードしたら動くようになりました。 というわけで、いきなりですが締め切ります。 おさわがせしました(T-T)

nakkiy
質問者

補足

FireFoxのツールで確かめたところ、私が自分で書いたJSファイルの冒頭の「@charset "shift_jis";」が「missing:before statement」だそうです。(外部CSSでは文字化け防止につけるのでJSも同じかとおもいましたが・・・) あと、雪のスクリプトで「mysrc=document.getElementById("pp"+k).src;」が「document.getElementById("pp";k)has no properties」だそうです・・・ (さっぱり意味がわからないですが;;) しかし、外部ファイルの書き方講座にあるサンプルファイルをまるまるコピペしてファイルを作っても、やっぱり動かないのです。 DOCTYPE宣言から</HTML>までまるまるです。 私は貼り付けただけで指一本触れていません。 それでもです・・・

関連するQ&A