こんばんは、お世話になります。
親ウィンドウから、window.openメソッドにて子ウィンドウを開きます。
そして、親ウィンドウから子ウィンドウの要素にaddEventListenerにて何かしらのイベントを設定します。
このとき、親ウィンドウが生きていれば設定したイベントが発生しますが、存在しない(閉じられている)とイベントが発生しなくなってしまうのですが、何故でしょうか?
また、解決策があれば教えていただきたいです
以下、一例です
(子ウインドウのGoogle検索トップページで検索ボックスをクリックするとボックスの背景色をピンクにする)
//childのwindow.nameを持つ子ウインドウを開く
child = window.open("https://www.google.com/?hl=ja" , "child");
//子ウインドウの検索ボックスにクリックイベントを設定
child.document.querySelector("input").addEventListener( "click" , function(){
this.style.backgroundColor = "lightpink";
})
//上記までの状態であれば、意図どおりに動作する
//child.opener.close()などで親ウィンドウを閉じると、設定したイベントが消去されてしまう
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
わたしの環境だと、同一オリジンポリシー違反でエラーになりました。
おそらくですが、childがグローバル変数なので、
親のwindowオブジェクトのプロパティとなっているため、
親のwindowオブジェクトが無くなると同時に、
プロパティも消えるためだと思います。
参考:
https://developer.mozilla.org/ja/docs/Glossary/G …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Chrome(クローム) Google Chromeのブラウザ(PC)ウインドウの移動について 3 2022/07/19 15:14
- その他(OS) MacのFinder操作について 2 2022/07/13 07:29
- HTML・CSS html/cssで要素が出てこなくて困ってます 1 2022/12/31 16:59
- その他(ブラウザ) Edgeバー 3 2023/02/23 18:33
- その他(プログラミング・Web制作) pythonで、tkinterとpillowの組み合わせ 2 2022/08/16 17:42
- その他(プログラミング・Web制作) seleniumbasic chrome操作について 1 2023/03/29 15:40
- Windows 10 ファイルエクスプローラーでフォルダを閉じる操作について 2 2022/10/15 11:06
- UNIX・Linux ubuntu ウィンドウのバー ダブルクリック 巻き取る 1 2022/04/28 19:28
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- Windows 10 2つのウィンドウ選択時の表示について 10 2023/07/25 08:48
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルのシート上に別のシー...
-
Javascript_submit()完了後に処...
-
ウィンドウ名からウィンドウオ...
-
ポップアップと作業ウィンドウ...
-
子ウィンドウの存在確認
-
VBの画面で、全ウィンドウを一...
-
VBAで任意のウインドウのサイズ...
-
デスクトップ画面を4分割するには
-
ウィンドウの2重起動を防止したい
-
ウィンドウの整列について
-
親ウィンドウのURL
-
親ウィンドウから子ウィンドウ...
-
window.Openをモーダルにできま...
-
履歴を残さないResponse.Redire...
-
ウィンドウサイズを開いたとき...
-
Javascript 親から設定したaddE...
-
<EXCEL/VBA> OUTLOOKのウインド...
-
親子関係の無いウィンドウの制御
-
Excel VBA Window の設定
-
リロード時のテキストフィール...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルのシート上に別のシー...
-
Javascript_submit()完了後に処...
-
デスクトップ画面を4分割するには
-
VBAで任意のウインドウのサイズ...
-
ウィンドウの2重起動を防止したい
-
VBの画面で、全ウィンドウを一...
-
<EXCEL/VBA> OUTLOOKのウインド...
-
ウィンドウ名からウィンドウオ...
-
ポップアップと作業ウィンドウ...
-
1クリックでモーダルを開いてか...
-
子ウィンドウの存在確認
-
window.Openをモーダルにできま...
-
子ウィンドウから親ウィンドウ...
-
親ウィンドウから開いた子ウィ...
-
JavaScriptで指定Windowを最大...
-
JavaScriptでPDFを新規ウィンド...
-
助けてGmailでボタン表示が消え...
-
初心者javascript グーグルクロ...
-
子ウィンドウより親ウィンドウ...
-
IEでのみ発生するJavaScriptエラー
おすすめ情報