• 締切済み

ウィンドウ制御?

A.html、B.htmlという2つのウィンドウを開いて、Bを閉じるとAがリロードするにはどうしたらいいでしょうか?

みんなの回答

  • leaz024
  • ベストアンサー率75% (398/526)
回答No.2

> A.html(親)からポップアップでB.html(子)を開き、さらにB.htmlからC.html(孫)をポップアップします。 > そこでC.htmlを閉じたときにA.htmlをリロードしたいのですが… ポップアップしたウィンドウから、親ウィンドウにアクセスする場合、opener というプロパティを参照します。 (opener は window オブジェクトのプロパティであり、親ウィンドウの window オブジェクトを参照します。) なので、C.html の BODY onUnload 時に、opener.opener.location.reload() を実行すればOKです。

  • leaz024
  • ベストアンサー率75% (398/526)
回答No.1

A.html と B.html の関係によって記述は変わりますが、基本的には B.html の BODY onUnload で A.html の location.reload() を実行する、という感じでよいのではないでしょうか。 この「A.html と B.html の関係」というのを明記して頂ければ、コードの書きようもあるのですが。 (AからBをポップアップするのか、AとBは共通の親を持つサブウィンドウなのか、など)

kokubuniji
質問者

補足

回答してくださってありがとうございます!! 補足をさせていただきます。 実は A.html(親)からポップアップでB.html(子)を開き、さらにB.htmlからC.html(孫)をポップアップします。 そこでC.htmlを閉じたときにA.htmlをリロードしたいのですが… 本なども見てみたのですがよくわかりませんでした。 よろしくお願いします。

関連するQ&A

  • ウィンドウ名からウィンドウオブジェクトを取得

    対象ブラウザはIE6~8です。 2つのウィンドウA/Bが連動するプログラムを作っています。 ウィンドウAにはウィンドウBを開くためのボタンがあり、 Aより先にBが開くことはありません。必ずAからBが派生します。 Aはwindow.openの戻り値を保持することで、B内部のJavaScriptにアクセスします。 Bはwindow.openerプロパティを経由することで、A内部のJavaScriptにアクセスします。 しかし、Aには自身をリロードする機能があり、 リロードすると保持していたBのウィンドウオブジェクトを失ってしまいます。 そこでAがリロードし終わったとき(onloadのタイミング)に、 何とかしてBのウィンドウオブジェクトを取得しなければなりません。 window.openではウィンドウに名前を付けることができますが、 その名前からウィンドウオブジェクトを取得するような、 document.getElementByNameみたいなメソッドは存在しないでしょうか? あるいは、BからAの監視を続け、リロードが終わった時に window.opener経由でメッセージを送る等の処理を実現する手段はないでしょうか? よろしくお願い致します。

  • JavaScriptで開いている別ウィンドウを更新

    JavaScript初心者です。 JavaScriptですでに開いている別ウィンドウを更新したいのですが可能ですか? どのようにすればよいのでしょうか? あらかじめ開いているページがあります(a.htmlとします)。 同じドメイン内で、まったく新しいページを開きます(b.htmlとします)。 b.htmlを開いた時に、すでに開いているa.htmlをリロードすることはできるでしょうか? b.htmlを開いた時に、新たにa.htmlをオープンしてリロードはできたのですが、 既に開いているa.htmlのウィンドウをリロードする方法がわかりません。 困っています。

  • ウィンドウのアクティブ制御

    EclipseでSwingを用いてGUIの開発を行なっています。 ウィンドウAのボタンを押すとウィンドウBを表示するようにしています。 ウィンドウBが表示されたときはウィンドウAに遷移できないようにしたいです。 つまり、ウィンドウBを×マークで削除する等々の方法で表示停止した場合のみに ウィンドウAの操作ができるようにしたいです。 可能でしょうか? よろしくお願いします。

  • 別フレームで開いたウインドウの制御

    ================ フレームA Aリンク ----------------- フレームB リンクB ================ このような形のページで、 リンクA,リンクBをクリックすると それぞれwindow.openで ウインドウが開く処理をしているのですが、 もし、フレームAのリンクAを選択したときに リンクBのウインドウが開いていた場合、 リンクBで開いたウインドウを閉じてから リンクAのウインドウをオープンするという処理を追加したいのですが、 この場合、どのように処理をすればよいのでしょうか? 御回答、よろしくお願いします。

  • アクティブウインドウが閉じた後のフォーカスの制御について質問です。

    アクティブウインドウが閉じた後のフォーカスの制御について質問です。 開発環境はVisual Studio.NET2003 VC++ MFCです。 二つのアプリケーション(アプリA、B)を立ち上げる、ランチャのようなアプリを作成しています。 両アプリ起動後、数秒すると、ランチャはbottomへ移動します。 Zオーダーは、前から、アプリA、アプリB、ランチャ、となります。 その後、最前面のアプリAを、アプリAの終了ボタンで閉じます。 すると、ランチャがアクティブになり、勝手にアプリBの前に出てきてしまいます。 希望としては、アプリBにアクティブになって欲しいのですが…。 アクティブウィンドウが消えた後にどのウィンドウをアクティブにするか、指定するような事は可能なのでしょうか。

  • サブウィンドウから親ウィンドウをリロード

    サブウィンドウから親ウィンドウをリロードするときに、 window.opener.location.href = "A.html"; のような使い方をしていますが、親ウインドウのアドレスを指定せずに行う方法がありましたら教えていただけないでしょうか。

  • Windows7とFlashPlayer18

    Windows 7 Home Premium 64bitを使用しています。 OSをクリーンインストールしてFlashPlayerの最新版をインストールして、IE 11でmixiのトップページにアクセスするとリロードを繰り返します。 設定変更のページに移動してまたホームへ戻るとリロードは止まります。 しかし他のサイトへ移動したり、IE 11を再起動した後mixiにアクセスするとまたリロードを繰り返すといった状態です。 FlashPlayerをインストールしない状態ではこの症状は起きないのですが、一度でもインストールすると、アンインストールしてもリロードを起こします。 Windows 8.1とIE 11の組み合わせ、又はWindows 10とEdgeの組み合わせでは起こりません。 あと、Windows 7とGoogle Chromeの組み合わせでも起こりません。 何が悪いのでしょうか?

  • 別ウインドウからメインウインドウの入力制御する方法

    HTML + JAVASCRIPT でちょっと困っています どなたか、知識のある方ご教授ください。 内容) メインウインドウから検索用のサブウインドウを表示し、サブウインドウで取得した内容をメインウインドウのテキストボックスに反映したい。 条件)    1.メインウインドウとサブウインドウとの親子関係は無し。     (window.open を使用しないとでも思ってください)     ※この為か、openerではエラーになってしまいました。。    2.メインウインドウはリロード(再表示)をさせない (サブからは、データの反映のみの処理としたいので。。)    3.メイン及びサブウインドウは、それぞれフレームを使用しています もし、このようなことができる様でありましたら、ご教授ください。 宜しくお願いします。

  • 孫ウインドウを閉じたら親をリロード

    親ページをクリックして、サブウインドウを開き、さらにサブウインドウからクリックして孫ウインドウを開きました。 孫を閉じた時点(またはサブウインドウをリロードした時点でもよい)で、親ウインドウをリロードするにはどうしたら良いでしょうか。 孫閉じる→サブウインドウリロード→親ウインドウリロードを、孫をクリックしたことにより行いたい。 それぞれのページは不特定で、固定のURLはありません。

  • プログラムの表示順序の制御

    現在、以下のような内容でシステムを作っています。 ------------------------------------------------ (1)「A」というExeから「B」というExeを呼び出して実行する。 (2)「B」が起動している間、「A」の操作はできない。 (3)「B」が起動している間、「A」のウィンドウ表示が「B」より前に出ることはない。 (4)「B」を終了すると、「A」が使用可能になる。 ------------------------------------------------ このとき、「A」と「B」以外に他のウィンドウ(「C」とします)があると、 「A」と「B」の両ウィンドウの間に「C」が入ることがありますが、 これを防ぐことは可能でしょうか?

専門家に質問してみよう