2012-01-14 9 views
1

ページの更新を取得して、特定の期間、JavaScript、jqueryなどを使用してそのページを一時停止する方法はありますか?ページをリフレッシュして一時停止する方法はありますか?

これは、一度に重要な作業の中で誤ってリフレッシュキーを押すのを防ぐために必要です。ページをリフレッシュする前に処理して保存する必要があります。

このフォーラムに掲載された以前の質問のうちの1つでは、この問題に直面しなければならなかったが、それはまだ解決されていない。私は個人的な質問としてそれを掲示することはそれの価値があると思う。上記の質問はhereです。質問の一部に問題があります。

スクリプト言語はPHPです。または、目標を達成するために他の言語を使用すべきですか?

答えて

6

これは、this exampleのようなwindow.onbeforeunload()で実現できます。

<script type="text/javascript"> 
    window.onbeforeunload = function() { 
     return "You sure you want to leave? You will lose all your work!"; 
    } 
</script> 
+0

ユーザーがページを離れることを決定したとします。以前にページで計算されたjavascript変数の値はすべて保持されますか? –

+0

私はそれが「アンロード前」であると理解しているので、ユーザーがページを離れたいと確信するまで、何もアンロードされません。 –

+0

技術的なバックエンドで、ユーザーがそれを知ることなく何かが動いている可能性があります。これらのタスクはリフレッシュを実行する必要があります。ユーザーがページをリフレッシュすることを選択した場合、リフレッシュを捕捉して一時停止して後で解放する方法。 –

-1

私はあなたが使うべきだと思う:

<body onbeforeunload="return 'are you sure you want to move away from this page?';"> 
+0

'confirm()'を削除して、プロンプトメッセージを返します。しかし、最近のFirefoxのバージョンでは、一般的なメッセージだけが表示されます。 – ThiefMaster

+0

@ Kariem Soudy、Cillosisに対する私の2番目のコメントを見てください。 –

+0

@ThiefMaster、Cillosisに対する私の2番目のコメントを見てください。 –

0

私はページの更新を停止または一時停止する方法はないと思います。はい、警告を出すことはできますが、フォームフィールドの変更時にjavascriptを使用してフォームの入力フィールドの現在の状態をユーザーのCookieに入力するだけで安全です。ユーザーが押したラジオボタン? Cookieが更新されました。ユーザーは入力フィールドを更新しましたか? Cookieが更新されました。

次に、ページの読み込み時に、PHPまたはJavaScriptでCookieを読み込んでフォームに入力してください。

+0

ajaxはありませんか?もしAjaxなら、前の投稿の私の質問はまだAjaxかクッキーである –

+0

のままです。私はあなたが非常に高負荷のウェブサイトを持っていない限り、これらのaproachesのいずれかに大きな欠点はありません人々は1日あたり何千回も未完成の形式でページを残す:) – Ranty

関連する問題