0

フルウィンドウのキャンバスで構成されるHTML5ゲームを作成しています。設定などを表示するために、時々キャンバス上にパネルを表示したい。

これを実現する1つの方法は<div id="panel">、デフォルトで非表示になり、キャンバスの上に絶対的に配置されるようにすることです。ユーザーがパネルを表示したい場合は、jQueryを使用してパネルを表示できます。

また、サーバーがフラグメント識別子を使用してこのパネルを開くことができるようにしたいです。

パネルを表示および非表示にする最良の方法(の1つ)を誰かに説明してもらえますか。

4

1 に答える 1

2

あなたが達成したいことを考えると、私はそれらのアプローチの1つを使います:

AJAX

  • パネル内のすべてを処理するJavaScriptオブジェクトを作成します
  • ユーザーのアクションに基づいてパネルを表示/非表示にできるハンドルを作成します(例onclick
  • サーバー上の何かが変更されたかどうかを確認する間隔を設定します
    • trueこの呼び出しの応答(JSONオブジェクトの場合もあります)を使用して、パネルの表示を更新する場合

HTML5 WebSocket

もう1つの可能性は、HTML5WebSocketを使用することです。WebSocketを使用すると、サーバーとブラウザーの間に全二重接続を確立できます。

WebSocketは、単一のTCP接続を介して全二重通信チャネルを提供するWebテクノロジーです。[…]WebSocketは、WebブラウザーおよびWebサーバーに実装されるように設計されていますが、任意のクライアントまたはサーバーアプリケーションで使用できます。WebSocketプロトコルは、独立したTCPベースのプロトコルです。HTTPとの唯一の関係は、ハンドシェイクがHTTPサーバーによってアップグレード要求として解釈されることです。[1] WebSocketプロトコルは、ブラウザーとWebサイト間のより多くの対話を可能にし、ライブコンテンツとリアルタイムゲームの作成を容易にします。[…]

Wikipedia.org「WebSocket」から

この投稿には、多くの優れた例と情報があり
ます。HTML5WebSocketを学習するための優れたリソースは何ですか。

于 2013-02-06T15:50:14.143 に答える