• ベストアンサー

リンク時、親ウインドウを最前面に表示させたい。

子ウインドウのURLをクリックすると、親ウインドウのフレーム内に内容を表示させています。その際に、子ウインドウが最前面に来ているため、全画面表示していると親ウインドウのフレーム内が変わったことがわかりません。リンクの時に親ウインドウを最前面に表示させたいのですが、何か良い方法はありますか?

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

  • ベストアンサー
noname#199778
noname#199778
回答No.2

小ウィンドウ側のリンクに、クリックイベントで親ウィンドウにフォーカスを与える指定を追加するのではいかがでしょうか。 <a href="hoge.html" target="main" onClick="opener.focus()">hoge</a> このように、小ウィンドウのa要素に「onClick="opener.focus()"」を追加してやると、このリンクがクリックされた時に親ウィンドウにフォーカスを移すようになると思います。 参考まで。

kunkuma
質問者

お礼

親フレームにフォーカスを移すことができました。 どうもありがとうございました。

その他の回答 (1)

  • Joh_Taka
  • ベストアンサー率76% (222/292)
回答No.1

簡単なのは、子ウインドウのURLがクリックされることによって、親ウインドウのフレームの中に表示されるページの <body> タグに onLoad="focus();" を加えて <body onLoad="focus();"> とすればよいと思います。 他にも子ウインドウ側に、リンク元部分の文字列やボタン等に対してonClick イベントで自身のウィンドウを閉じされる、またはフォーカスを失わせる方法もありますが、リンクへのジャンプの命令と同時にウインドウを閉じる、またはフォーカスを失うとエラーを起こしますので、ウインドウのフォーカスコントロールの命令を setTimeout メソッドなどで、リンクの命令に対して遅らせる必要があります。 動作の確実性では、一番目の、リンク先に <body onLoad="focus();"> が良いと思いますが・・。

kunkuma
質問者

お礼

素早い対応ありがとうございました。

関連するQ&A

専門家に質問してみよう