dポイントプレゼントキャンペーン実施中!

javascriptを外部ファイルにて2つ作成する際、リンク先としてhtmlファイルに<script type="text/javascript" src="#"></script>をそれぞれリンク先を変えて2つ記述すると、二番目に記載したjsファイルしか作動しません。対処方法を教えてください。

A 回答 (5件)

No3です。



>おっしゃる通り、jsの二つのファイルの両方ともに入ってます。
>この場合どう対処すればいいのでしょうか?
window.onloadで記述されている処理内容が上書きされてしまうために、後のものしか実行されていないというのが直接の原因です。

運がよければ、それを回避するだけでなんとかなりますが…
1)window.onloadの内容をまとめて一つにするか、それぞれをfunction A()、function B()みたいにしておいて、改めてwindow.onload = function(){ A(); B(); } のように定義しなおす。
2)それぞれを個別の外部ファイルとして単独実行することもあるのであれば、以下の質問文で行なっているような方法で、前に定義されているonload処理の内容を保全するような仕組みに書き換える。
 http://oshiete.goo.ne.jp/qa/6170326.html

仮に、このようなやり方でwindow.onloadの競合は回避できたとしても、No2様がご指摘のように重複している名前があると、そちらが原因で動かない(又は誤動作する)ことも考えられます。(ご使用のスクリプトの内容が不明なのでわかりません)

さらには、No4様がご指摘のような事態(No2様のご指摘の複雑形)ですと、スクリプトの内容を理解できない限り回避は無理でしょう。
(内容が理解できても、面倒かもしれません)
    • good
    • 0

二つ以上のライブラリをよんでいるのでは?



ライブラリは競合することが多いので仕様がよめないなら
ライブラリを一つに絞った方がいいです
    • good
    • 0

両方に


 window.onload~~
とかはいっているのでは?

この回答への補足

おっしゃる通り、jsの二つのファイルの両方ともに入ってます。この場合どう対処すればいいのでしょうか?

補足日時:2010/09/13 15:09
    • good
    • 0

関数名が重複しているとか


変数名が重複しているとか
    • good
    • 0

リンク先が間違ってるとか。

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!