かなりの作業を行うページがあり、ユーザーが警告を受けずにそのページから移動できるようにしたくありません (ブラウザを閉じる、戻るボタンを押すなど)。onbeforeunload イベント (これは IE 固有のものであり、プロジェクトが ActiveX を多く使用しているため、私にとっては問題なく機能すると思います) がうまく機能することがわかりました。
問題は、ユーザーが右上隅にある小さな「ヘルプ」アイコンをクリックして、いつでもヘルプ ウィンドウをポップアップできるようにすることです。これにより、メイン ウィンドウがどこにも移動せず、ページがアンロードされなくても、onbeforeunload が発生します。
onbeforeunload イベントの実行時に実行される JavaScript 関数は、テキストを event.returnValue に入れるだけです。どういうわけか、ヘルプ アイコンがクリックされたものであることを確認できた場合、その状況でテキストを event.returnValue に入れることはできませんでした。しかし、どうすればページにそれを理解させることができるでしょうか?