私のウェブサイトには完全に機能するメッセージングシステムがあります。 新しいメッセージが表示されたときにメンバーを変更するボックスポップアップを使用して、これを進化させたいと思います。
「新しいメッセージがあります。表示しますか?」のようになります。 [はい]または[いいえ]をクリックできます。
これを行うにはどうすればよいですか? これまでにこのようなことを試したことはありません!
ありがとう
更新。 ここで必要なテクノロジーを使用するのは非常に不慣れです。 これをすべてのページで確実に機能させるにはどうすればよいですか? どのコードを含めますか? これはもっと多くの可能性を開くので、私は改善する必要があるものです!
回答:
回答№1は1あなたはループAJAX呼び出しを持つことができます数分ごとにチェックする背景。サーバーがURL(または「メッセージなし」と区別できるもの)を返す場合、ポップアップが表示され、OKがヒットすると、URLに送信されます(JavaScriptの基本的なconfirm()ダイアログを使用)。
ただし、これでCPUパワーを弱めると、ユーザーの忍耐力が薄くなります。
回答№2の場合は0
場合は、サーバーと定期的にチェックする必要がありますJavaScriptのタイマーを使用して(つまりクライアントサイドコードで)、ユーザーに新しいメッセージが表示されます。 HTTP(ステートレス)の性質上、この通知をサーバーからプッシュすることはできません。
回答№3の場合は0
まず、次の点を確認してください。
http://stanlemon.net/projects/jgrowl.html
jQuery + jGrowlをロードし、X秒ごとにサーバーをポーリングするハートビート関数を作成する必要があります。
サーバーがJavaScriptからリクエストを受信したら、データベースでun_とマークされた最新のメッセージをチェックします通知された (読んでいません)
リストをコンパイルして通知済みとしてマークし、リストをJavaScriptに再度送信すると、jGrowlに渡され、通知が表示されます。
回答№4の場合は0
3つの選択肢があります:
- ユーザーがページを再読み込みするたびにメッセージを表示します。簡単かつ高速。
- サーバーにAJAXリクエストを送信してメッセージを表示します。多くのユーザーがいる場合は非常に悪い場合があるので、応答にほとんど時間がかからないようにしてください。
- WebSocketを使用してサーバーからメッセージを送信します。最新のテクノロジーですが、一部のブラウザーでのみサポートされているため、実装する前に互換性の問題を確認してください。
個人的な反応が必要ない場合は、個人的には#1を使用します。 #2はWebチャットに適しています。 #3は普遍的ですが、まだほとんど使用されていません。
通常、バックグラウンドでAJAXスクリプトを実行し、長いタイムアウト(30秒以上)で実行し、ページの再読み込み後にメッセージを表示する機能があります。これは#1と#2を組み合わせたものです。