初めまして。JavaScript初心者です。
今回、以下のようなことをやろうと考えております。
(1)あるウィンドウフレームセット(フレームセット(1)とします)を配置し、フレームでウィンドウを2分割し、上半分のフレーム名をフレームA、下半分のフレーム名をフレームBとします。
(2)フレームAに配置されたボタンを押すことにより、別のウィンドウを呼び出します。そのウィンドウにもフレームセット(フレームセット(2)とします)を配置し、そのフレームセット内もフレームを2分割し、上半分のフレーム名をフレームC、下半分のフレーム名をフレームDとします。
(3)フレームCに配置されたボタンを押すことにより、フレームD内にさらにフレームセット(フレームセット(3)とします)を配置し、フレームセット(3)内もフレームを2分割し、上半分のフレームをE、下半分のフレームをFとします。
(4)フレームEに配置されたボタンを押すことにより、フレームBをリロードします。
(1)~(3)はすべて正常に処理できるのですが、(4)がうまくいきません。
window.opener.フレームB.location.replace("フレームBのURL")
でうまくいくと思ったのですが、うまくいきません。
つたない質問の書き方で大変申し訳ありませんが、どなたか分かる方がいらっしゃいましたらご教示いただけないでしょうか。宜しくお願い致します。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
結局のところ、A~Fの構成はどのようになっているのでしょうか?
私の解釈では、最終的に
フレームセット1(1つめのウィンドウ)
├ A ─┐
└ B │ open
↓
フレームセット2(2つ目のウィンドウ)
├ C
└ D(フレームセット3)
├ E
└ F
となっているのですが、このような構成の場合、EからBを参照するには
top.opener.parent.フレームB
とします。
<解説>
ウィンドウのオープン元の参照には opener を使いますが、opener は window.open によって新たに開かれたウィンドウしか持っていないので、この場合、フレームセット2にしかありません。
そこでEからはまず top でフレームセット2を参照し、そこから opener を参照する(つまり top.opener とする)必要があります。
また、top.opener が示すのはフレームセット1ではなくフレームAなので、top.opener からフレームBを直接参照することはできません。
ここではフレームAとBが兄弟なので、いったん親(top.opener.parent)を経由してフレームBを参照します。
なお、リロードを行う場合は、location.reload() というそのままのメソッドがありますので、こちらを使いましょう。
つまり、
top.opener.parent.フレームB.location.reload()
となります。
No.1
- 回答日時:
このあたり↓が参考になりませんでしょうか。
http://oshiete1.goo.ne.jp/kotaeru.php3?q=723500
http://www.ybi.co.jp/koike/qa2000/qa2488.htm
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# 【C++】IDirect3DSurfaceのディープコピーは可能ですか? 1 2022/07/06 02:47
- Visual Basic(VBA) フレーム内のオプションボタンの選択結果をセルに書き出したい。 図のような預金種目というフレームにオプ 2 2022/07/29 11:12
- 家具・インテリア ダブルのベッドにクイーンのマットレス 5 2023/02/11 08:35
- カスタマイズ(バイク) カスタマイズ 1 2022/11/12 01:09
- その他(ファッション) スポーツメガネでフレームの色は白などはあり? 2 2022/11/30 07:26
- ドライブ・ストレージ HDDを5台入れられる金属フレームは売っているでしょうか? HDDを5台くらいをスライドさせて入れて 3 2022/05/11 05:43
- サングラス・カラコン 眼鏡 7 2022/11/30 06:36
- サングラス・カラコン 4000円以内のメガネフレーム 9 2022/12/01 10:30
- 化学 強酸性でも錆びないメガネを教えて。 4 2022/07/17 19:50
- メガネ・コンタクト・視力矯正 失敗した高額メガネ 6 2022/12/03 23:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
スマホ上で、左右スワイプで次...
-
子フレームの自動リロードは可...
-
フレームでの右クリック禁止
-
HTMLフォームボタンによるター...
-
チェックボックスのチェックを...
-
親ウィンドウの別フレームを子...
-
前のページのurlを取得するには?
-
別ページのインラインフレーム...
-
別フレームの中にあるインライ...
-
写真合成できるフォトフレーム...
-
<a href="#" …>の意味を教えて...
-
bodyにidをつける理由は何ですか?
-
フォーカス移動抑止について
-
SQLのWHEREで全てを質問する方法
-
JavaScriptでiframeの内容を「...
-
SCRIPT5007: 未定義または NULL...
-
別ファイルのfunctionの読み込み方
-
複数のJavascriptを1つのscrip...
-
base64encodeでの文字化けについて
-
JavaScript でキーを送る
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
スマホ上で、左右スワイプで次...
-
インラインフレームをドラッグ...
-
子フレームの自動リロードは可...
-
submitボタンで他のフレームを...
-
別フレームのページが読み込み...
-
インラインフレームで表示され...
-
セレクトメニューでリンクの際...
-
親ウィンドウの別フレームを子...
-
<iframe>~</iframe>内のwindow...
-
openerは使えないのでしょうか?
-
別ページのインラインフレーム...
-
フレームでの右クリック禁止
-
親フレームからkeydownイベント...
-
onunloadイベントでの画面制御...
-
別フレームにスムーススクロー...
-
ファイルのフォルダの階層の指...
-
左右のフレームを同時にスクロ...
-
他のフレームのスクリプトを実...
-
リロードとの違い
-
別フレームの中にあるインライ...
おすすめ情報