• ベストアンサー

window.open を 遷移先のページで close する

現在のページ index.htm (仮) でページをオープンした 場合、 var win1 = window.open('', 'newWin', ''); post submit 等で次のページに移ってから、前ページ で開けた newWin を閉じるにはどうしたらいいのでしょうか。 win1.close(); とか newWin.close(); とかやっても ステータスバーに、三角のびっくりマークが出て うまく動かないようなのですが。

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

  • ベストアンサー
回答No.1

画面をリフレッシュした場合、前の画面で作成したスクリプトの変数は、グローバル変数であっても保持されません。 対策としては、一度開いているポップアップがリフレッシュされてしまいますが、遷移先のonLoadイベントでもう一度、 var win1 = window.open('', 'newWin', ''); を行い、ウィンドウのオブジェクトを作成する必要があります。 そうすれば、クローズできると思います。 ただ、この方法も、適用できる場合と適用できない場合がありますが・・・

alx
質問者

お礼

ありがとうございます。 わかりにくい事言うから回答がつかないのかと思ってました。 後ほどやってみます。

alx
質問者

補足

おっしゃる通りできました。 丸1日悩んでいたのでうれしいです。ありがとうございました。

関連するQ&A