1

ユーザーがページから離れるときにjqueryslideUpエフェクトを使用して、ページを閉じたときに見栄えを良くしたいと思います。

onunloadイベントを使用する必要があると思いますが、エフェクトが完了するまでページを閉じるのを遅らせるにはどうすればよいですか。

頭に浮かんだオプションの1つは、ページを閉じる関数を効果的にハイジャックし、それを変数に格納して、エフェクトを実行した後で実行することですが、それをどのように行うかわかりません。

任意の提案や代替案は大歓迎です

4

7 に答える 7

4

探しているのはonbeforeunloadイベントです。ただの警告です...それは本当に
速い はずです...またはあなたの訪問者はそれがどんなにクールに見えてもおそらくそれを嫌うでしょう

アニメーションが完了する前にページが移動しないようにすることに関しては、それはより大きな問題です...どのアニメーションもsetTimeout / setIntervalに依存し、ページはそれらが完了するのを待たずに終了します。

于 2009-06-17T12:30:27.017 に答える
3

ユーザーが要求したときにウィンドウを閉じる以外のことを行うと、ユーザーとの契約が破られます。ブラウザウィンドウはあなたのものではなく、ユーザーのものであり、どんなにクールな効果であっても、必然的にほとんどのユーザーを悩ませます。

onbeforeunloadイベントは、実行できる機能が非常に制限されています。文字列を返す必要があります。この文字列は、ページを離れることについての確認をユーザーに求めるために使用されます。クールなアニメーションでは機能しません。

于 2009-06-17T12:34:09.710 に答える
2

私の知る限り、ユーザーがページを離れるのを防ぐ唯一の方法は、キャンセルできないonbeforeunloadイベントです。代わりに、そのメソッドから文字列を返すと、ブラウザはユーザーに[はい/いいえ]ダイアログを表示し、人生は続きます。276660にはこれに関する詳細情報があります。

私はあなたがこれで多くの幸運を得るつもりはないと思います。

于 2009-06-17T12:34:38.773 に答える
1

なぜ、ユーザーが単純にWebサイトから離れたいときに「クールな」効果を出す代わりに(ユーザーがブラウザー/タブを閉じてもアンロードイベントが発生します)、単純なユーザーを煩わせるのではなく...防止彼/彼女は再び戻る...

...ユーザーが初めてWebサイトにアクセスしたときに、その「クールな」効果はありますか?通常のイントロ効果として?

私は簡単なアイデアとしてそれをしました、あなたはそれをここで見ることができます:http ://www.balexandre.com/jmfc

于 2009-06-17T12:32:52.927 に答える
1

Jonathan Finglandの答えに100%同意し、これを追加します。

IEでは(どのバージョンがこれをサポートしているかはわかりませんが、IE6がサポートしていることはわかっています)、ページを離れるときにいくつかの適切なメタタグを使用してフェードなどを実現できます。ただし、これはブラウザ(IEのみ)で制限されているため、クロスブラウザでの使用に固執しています。

于 2009-06-17T12:34:00.223 に答える
1

AJAXを介して新しいコンテンツをロードすると、効果と遷移をより適切に制御できるようになるだけでなく、そのような方法でブラウザーのアクションを乗っ取ろうとすることで発生する可能性のあるユーザーの煩わしさを軽減できる場合があります。

上記のようなスライダーの形式を使用するか(たとえば、http://webdesignledger.com/tutorials/13-super-useful-jquery-content-slider-scripts-and-tutorialsを参照)、または単にコンテンツペインをロードすることを検討します。ユーザーのクリックに応じて。

于 2010-05-17T00:03:50.857 に答える
0

ウィンドウを閉じるのを遅らせるために私が見つけた唯一の方法は、アラートを使用することです。これがあなたのケースにとって許容できる妥協案である場合、それは実際にメモリ内のウィンドウの破壊を遅らせ、ページタイマーを実行できるようにします(もちろん、ユーザーがアニメーションが終了する前にアラートポップアップを閉じない場合)。

私は最近このアプローチを使用したので、FABridgeを介してflexメソッドを呼び出すことができました(そうでなければ、flexメソッドの呼び出しが終了する前に破棄されます)。これについてのコメントを聞きたいです。

于 2010-04-08T10:34:01.843 に答える