実現したいこと
- 編集中のページでブラウザバックした時に、確認ダイアログを表示したい
- iPhoneで動作すること
前提
環境:Vue3 + Vuex + VueRouter4 + vee-validate
vee-validateのdirtyを見て編集中の場合、pagehide
イベントをフックして
確認ダイアログを出しています。
発生している問題・エラーメッセージ
- iPhoneでは確認ダイアログが出ない。
※PC(Chrome,Firefox)とAndroidでは問題なく確認ダイアログが出る。
該当のソースコード
<script> window.addEventListener('pagehide', function(event) { event.preventDefault(); event.returnValue = ''; // Chrome用 }); </script>
試したこと
beforeUnlaod
やunlaod
イベントを使用したが、iPhoneでは非対応であることが分かった。

下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
また依頼した内容が修正された場合は、修正依頼を取り消すようにしましょう。
こちらの回答が複数のユーザーから「質問に対する回答となっていない投稿」という指摘を受けました。