
javascriptでwindow.closed()と関数の実行順序についての質問です。
以下のようなことを実現したいです。なお、(2)ではuserAgentではなく、画面が閉じているかどうかを検知してポップアップを出したいです。
---
(1)自画面の閉じるボタンで関数呼んでwindow.close()実行
(2)同じ関数内で、window.closeでは閉じない場合のみ検知してポップアップを出す
---
一つの関数では(もしくは複数関数を入れ子にしても)、window.closeのあとwindow.closed()の判定などを行おうとすると、window.closeで閉じるはずのブラウザで画面が閉じてくれません。
(window.closeで閉じるブラウザでは、そもそも(2)は実行されないのでは?と思ったり…)
初歩的な質問で申し訳ありませんが、とても困っています。
どうぞよろしくお願いいたします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
そういう仕組みがあるんですね。
知りませんでした、すみません。
no.1の書き方で、私の環境では閉じました。
一瞬アラートが表示されて、それも一緒にすぐに。
windows vista + google chrome です。
No.1
- 回答日時:
window.close();
if(window.closed == false) {
alert("閉じられませんでした");
}
こうですか?
これだと、閉じますが、一瞬アラートが表示されるんですよね。
window.close()で閉じないのってどういうときなんですか?
この回答への補足
ご回答ありがとうございます!
window.close()で閉じないのは、以下の理由によります。
・今回閉じようとしている画面はjavascriptで開かれた画面ではない
・ブラウザの中には(Firefoxなど)javascriptで開かれていない画面を
javascriptで閉じることをセキュリティ的に許容していない(なので閉じない)ものがある
回答いただいたコードでもやってみましたが、
通常window.closeが効くはずのブラウザでも閉じないです…
(1行目だけでなく、2~4行目の処理までやろうとして閉じないのかと思うのですが)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 英語 Since there is no change in external dimensions, t 1 2023/04/03 22:42
- Windows 10 マルチディスプレイ【モニター2つ並べて】プリントスクリーンを片方のだけ取るにはどうする? 3 2022/11/27 02:46
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/10 14:24
- JavaScript jQueryでのレスポンシブが綺麗に動かない 3 2022/06/21 11:08
- Chrome(クローム) 最近Win10にてブラウザが左にスッと隠れていく現象に悩まされてます 3 2023/07/22 23:11
- 英語 It will most likely be necessary to perform a spli 2 2023/03/26 09:40
- Excel(エクセル) 開いているフォルダを全て閉じる、マクロを教えて下さい 3 2022/08/28 08:42
- その他(プログラミング・Web制作) Pythonによる物理の斜方投射の位置座標表示について 2 2023/06/05 12:46
- PDF Just PDF 5 proでポップアップしたファイル名がつきまとう 2 2022/12/18 09:56
- iOS デスクトップの画面が Prt Sc 出来ない。 1 2022/05/09 15:57
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
[Java] Edgeでのアドレスバー非...
-
IE7でのwindow.openerがnullになる
-
親ウインドのASPをリロードさせ...
-
同じページをブラウザで複数開...
-
Strutsで開いた子画面を閉じた...
-
opener.focus();が利かない
-
閉じた後のwindow.closed検知
-
Javascript使用時に画面にキャ...
-
デジタル時計の時刻合わせの方...
-
スクリプトって、何ですか?ど...
-
リストビューをスクロールさせ...
-
マイページはどこを開くの
-
エクセルのシート上に別のシー...
-
一定時間おきにアラームやポッ...
-
Javascript_submit()完了後に処...
-
Outlookでこのような表示がされ...
-
HP作成で、画面の更新をしない...
-
小さな表示窓の呼び方は
-
Excel用ボタン天国200の件
-
エクセルでポップアップを出し...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[Java] Edgeでのアドレスバー非...
-
同じページをブラウザで複数開...
-
ブラウザ Chromeを使っていて、...
-
サブウィンドウを常に最前面に...
-
画面を閉じる(×ボタンやタスク...
-
opener.focus();が利かない
-
window.open("about:blank")
-
親ウインドのASPをリロードさせ...
-
onclickでのページ内移動
-
閉じた後のwindow.closed検知
-
子画面を自動で閉じた後、親画...
-
ツールバーやステータスバーな...
-
呼び出されたページを閉じ、呼...
-
Request.Params("xxx")で「+」...
-
alertの最前面表示
-
リロードさせないワザ
-
しばらくお待ちくださいダイアログ
-
ホームページビルダーでウイン...
-
Javascript使用時に画面にキャ...
-
MM_openBrWindowとwindow.open
おすすめ情報