現象
chromeでiframeのあるページを表示しようとする際に気になる挙動をする箇所があり、なぜこうなるのか気になったので質問します。
以下のようなhtmlで、ダイアログボックスがOKボタンをクリックする前に閉じられるという現象がありました。(URLは再現用の例で、アクセス失敗するものなら何でもOKです。最初にこの現象が起きた際は、レスポンスが返ってこないサーバのIPアドレスがhttps://xxx.xxx.xxx.xxx/index.html
のような形で指定されていました。)
html
1<iframe src="https://1/"></iframe> 2<script>alert("test");</script>
原因が気になって「chrome iframe alert closed」などで検索してみたのですが、それらしい内容は見つかりませんでした。
どうしてこのような挙動になるのか、教えていただきたいです。
確認できた動作条件など
- iframeに設定するURLはアクセス失敗するもの(Err_Address_Unreachableエラー)
- iframeの読み込みが失敗した瞬間、表示されているダイアログボックスが勝手に閉じられているようである
- Chromeでは発現するが、FireFoxやEdgeでは発現しなかった(通常通り、OKをクリックするまでalert()が閉じられない)
- chromeのコンソールには特にエラーなど出ていない
html
1<!-- 以下のソースの場合、alert(1)のOKを手動で押したあとにalert(2)のみが勝手に閉じられる --> 2<script>alert(1);</script> 3<iframe src="https://1/"></iframe> 4<script>alert(2);</script> 5<script>alert(3);</script>
環境
- Windows 10
- Chrome 83.0.4103.116(最新版)
回答2件
あなたの回答
tips
プレビュー