• ベストアンサー

ロード時に別フレームの関数を実行したい

画面ロード時に、別フレームの関数(クリック時に画像を変える関数)を実行したいんですけど、どうやって書いたらいいのでしょうか? ハイパーリンクに別フレームの関数を実行させるものはありましたが・・・。 もしくは、ロード時に別フレームの画像を変えるスクリプトでもいいです。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • sight
  • ベストアンサー率53% (199/370)
回答No.1

JavaScriptの関数を呼ぶときにオブジェクトの階層構造を全部書いてもだめですか? window.parent とか window.top などのオブジェクトを使って、フレームセットを定義しているページのオブジェクトにアクセスします。 たとえば、ロードしたページの親フレームセットで、 ロードしたページがleft、関数changeImg()のあるページがrightとNAME属性を定義されていたとしたら、 BODYのonLoadイベントでwindow.parent.right.changeImg()を呼んであげればいいと思います。

cat_tomato
質問者

お礼

ああ、すみません。 下の構文でちゃんとできました。 window.top.right.changeImg() ありがとうございました。

cat_tomato
質問者

補足

早速の回答、ありがとうございます。 おっしゃるとおり、onRoadイベントに書いたのですが、 window.top.right.changeImg(引数いっぱい) window.top.rightがNullだというエラーが出てしまいます。 2段フレームなので、 window.parent.parent.right.changeImg(引数いっぱい) ってことなのかな?

関連するQ&A