「index.template.html」ドキュメントで、JavaScriptを使用してFlex4アプリケーションで作業しています。Firefox で onbeforeunload を使用できないという問題があります。アプリケーションは IE で完全に動作しますが、まったく同じアプリケーションが FF ではうまく機能しません。(下記参照)
<script type="text/javascript">
window.onbeforeunload=before;
window.onunload=after;
function before(evt)
{
var flex=document.$(application)||window.$(application);
flex.unloadMethod(); //custom method to log out the user
}
function after(evt)
{
}
</script>
私が見つけたところによると、FF は onbeforeunload イベントを登録していないようです。そのため、代わりに使用する一般的な方法は JQuery とのバインディングであることがわかりました。そのため、上記のコードを削除して以下のコードに置き換えましたが、ユーザーが IE と FF の両方でページを離れようとしたときにポップアップが表示されません。これに JQuery を使用していると思われる人は、まったく同じことをしているように見えるので、何が起こっているのかわかりません。
<script type="text/javascript">
$(window).bind("beforeunload",function(event){
return "This should create a pop-up";
});
</script>
最終的には、最初のコードのように「flex.unloadMethod」を呼び出すとよいでしょうが、当面はポップアップを機能させようとしているだけなので、正しい軌道に乗っていることがわかります。どんな洞察も大歓迎です。