ブラウザウィンドウの終了時にモーダルポップアップを作成する方法を理解しようとしています。私はアラートボックスを行う方法を知っていますが、基本的な "あなたは本当に残しておきますか"という警告ボックスの代わりに、ユーザーが終了時にアンケートに回答するようにしたいと考えています。ウィンドウ出口のモーダルポップアップ
答えて
window.onbeforeunload = function() {
return 'Your content has not been properly saved yet!';
};
これは、ブラウザがこの1のような確認ボックスを表示するようになります。
http://f.cl.ly/items/2L0t1k0d2U0p0Z0z1d2t/Screen%20shot%202012-02-14%20at%206.09.58%20PM.png
あなたが見ることができるように、関数によって返された文字列が表示されています箱の中。
できません。ウィンドウを閉じるのを止める唯一の方法は、JS Confirm(またはalert)を使用することです。ページ内のモーダルをポップアップするだけだった場合でも、ウィンドウは閉じたままになり、表示されませんでした。あなたの最善の策は、JSアラートを開いて、そのページを質問にリダイレクトすることです。それはユーザーにとって信じられないほど迷惑であることに注意してください。
アラートボックスを使用して、休暇をとるよう依頼しなければならない場合は、モーダルをポップアップすることができますか? – THEDert
もし彼らが出発すると、彼らはなくなってしまったので、それはありません。 – MetalFrog
文書の 'unload'イベントにバインドする必要があります。 – bfavaretto
それは常に終了時にコードを置くことをお勧めしませんが、あなたはこのような何か行うことができます。そして、
<body onUnload="javascript:openDialog()">
または
$(document).bind('unload', openDialog);
:
function openDialog(e) {
e.preventDefault();
$("#yourQuestionnaire").dialog('open');
}
しかし、一般的にonUnload
イベントへのバインドを避けることは良い方法です。その理由は、そのfiすべてのブラウザと状況で、リングが信頼できるものではありません。
UPDATE
としてドキュメントには、それを示しています。すべてのStackOverflowのページ上のFirefox/Firebugのコンソールを介して、それを適用するときにこれが私の作品
$(window).unload(function() {
alert('Handler for .unload() called.');
});
。ここ
私は、デフォルトのjsメッセージの代わりに素敵なHTMLメッセージを使いたいと思っていました。私はついにそれをやる方法を見つけた。私はjQuery Colorboxモーダルを使用していますが、これはモーダル要件には非常に便利です。
基本的にmousemove
イベントを使用して、Y座標(e.clientY
)が5より小さいかどうかを調べることができます。マウスがアドレスバーの近くにいる(ユーザーが新しいURLを入力するか、ウィンドウを閉じようとする)たびに発生します。
jQuery(document).ready(function() {
jQuery(document).mousemove(function(e) {
if (e.clientY <= 5) {
jQuery.colorbox({initialHeight: 250, initialWidth: 250, html:'<h2>any custom HTML here</h2><br/><img src="nice-img" />'});
}
});
});
e.pageY
を使用している多くの例が見つかりましたが、ユーザーがスクロールしていない場合にのみ発生します。したがって、5ピクセルでも下にスクロールすると、e.pageY
は機能しませんが、e.clientY
が機能します。 e.pageY
はオフセットを与え、e.clientY
は絶対座標を与えます。非常に重要!
- 1. ウィンドウ上のモーダルポップアップ - 一度にリセット
- 2. 出口
- 3. 出口
- 4. Mono.Cecil:ログメソッドの入口と出口点
- 5. window.open開口部のタブやウィンドウ
- 6. コンソールのトラップ出口
- 7. OpenShiftの出口ルータ
- 8. レイアウトのルータ出口
- 9. RPMアップグレードポストインストール出口
- 10. 出口ダブル
- 11. キャッチ出口(1);
- 12. アッカストリーム入口と出口はここ
- 13. メインスレッド出口、他の出口もありますか?
- 14. モーダルポップアップのiframeからの親ウィンドウの参照
- 15. Blackberryアプリケーション出口コールバック
- 16. Swift:コマンドラインツール出口コールバック
- 17. エリクシール/フェニックス出口ループ
- 18. 剃刀出口コードブロック
- 19. JOptionPane.showInputDialog自動出口
- 20. メイン出口の後のセグメンテーションフォルト
- 21. のMozillaブラウザの出口オブザーバー
- 22. スイッチのデフォルトの出口プログラム?
- 23. javascript/jqueryを使用したウィンドウ上のモーダルポップアップ
- 24. のpython出口例外
- 25. 出口のvim復元シェル
- 26. 親出口のPythonマルチプロセッシングキュー
- 27. Pythonのマルチプロセッシング出口エラー
- 28. 出口は、ポップアッププラグインWordpressの
- 29. 自動化のsshpass出口
- 30. Javaとhaarascadeの顔と口の検出 - 鼻の口
"このページに留まる"と "このページを残す"テキストを編集する方法はありますか? – THEDert
いいえ、私はそうは思わない。 –
ああ、それは吸う....あなたのソリューションをありがとう! – THEDert