こんばんは、お世話になります。
親ウィンドウから、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ランキング
-
エクセルのシート上に別のシー...
-
Javascript_submit()完了後に処...
-
ポップアップと作業ウィンドウ...
-
ウィンドウの2重起動を防止したい
-
ブラウザの×ボタンを効かなくす...
-
1クリックでモーダルを開いてか...
-
VBAで任意のウインドウのサイズ...
-
別フレームのページを更新させたい
-
JavaScriptで指定Windowを最大...
-
VBの画面で、全ウィンドウを一...
-
<EXCEL/VBA> OUTLOOKのウインド...
-
履歴を残さないResponse.Redire...
-
親ウィンドウから開いた子ウィ...
-
デスクトップ画面を4分割するには
-
タスクバーに重ならないように...
-
タスクバーに非表示
-
親→子→孫サブウィンドウのフォ...
-
チェックボックス付きツリービュー
-
子ウィンドウを常に手前表示、...
-
インタネットからPDFファイルだ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルのシート上に別のシー...
-
Javascript_submit()完了後に処...
-
VBAで任意のウインドウのサイズ...
-
ウィンドウの2重起動を防止したい
-
VBの画面で、全ウィンドウを一...
-
ポップアップと作業ウィンドウ...
-
子ウィンドウから親ウィンドウ...
-
ウィンドウ名からウィンドウオ...
-
子→親ウインドウへデータを受け...
-
子ウィンドウの存在確認
-
子ウィンドウから親ウィンドウ...
-
window.openで新しいページを後...
-
<EXCEL/VBA> OUTLOOKのウインド...
-
親ウィンドウから開いた子ウィ...
-
window.Openをモーダルにできま...
-
1クリックでモーダルを開いてか...
-
孫ウインドウを閉じたら親をリ...
-
子ウィンドウの「閉じる(×)」...
-
JavaScriptで指定Windowを最大...
-
助けてGmailでボタン表示が消え...
おすすめ情報