これはjQueryのの私の現在の流れです:jQueryオブジェクトのデザイン
- オブジェクトが作成されます。
- オブジェクトには、HTML表現を含む文字列を返すdraw()という関数があります。
- コンテナが作成されました。
- コンテナにも同じことをするdraw()関数があります。
- オブジェクトとコンテナは、両方とも$( '。class')。append(...)を使用して2つの別々のdivに描画されます。
- オブジェクトのdivはドラッグ可能になり、コンテナのdivは削除可能になります。
上記は機能します。しかし、以下は私がつまずくところです:
コンテナコンテナにはオブジェクトの配列が含まれています。ユーザーがObject divをContainer divにドロップすると、そのObjectをContainer配列に追加したいと考えています。
各オブジェクトに一意のIDを追加し、そのIDでオブジェクトdivを作成し、一意のコンテナIDを持つコンテナdivにオブジェクトをドロップし、両方のIDでルックアップを実行する唯一のオプションはありますか?
EDIT:わかったかもしれませんが、多分私は少し上手くそれを抽象化することができます。
私はトレーディングカードとカードパックを画面に表示しています。トレーディングカードは小さな四角い箱でモンスターの絵があり、カードパックは小さい灰色の箱です。トレーディングカードをカードパックにドロップすると、トレーディングカードが消え、カードパック内にトレーディングカードの小さな画像が置かれます。
各カードパックにはトレーディングカードのコンテナがあります。各オブジェクトTradingCardとCardPackには、そのオブジェクトの描画方法を表すHTML文字列を作成する.draw()メソッドがあります。次に、その文字列をJQueryを使用して画面上の任意のオブジェクトに追加できます。今
、戻って私の最初の記事に関連する:
TradingCardはドラッグ可能で、かつCardPackはドロップ可能です。 TradingCardをCardPackにドロップすると、JQueryのdroppable内の関数が呼び出されます。私は、その関数がそのTradingCardをCardPackの配列に追加したいと思う。
私は基本的なロジックに従うと思うjsfiddleはコードの理解を助けるでしょう。 – davidethell
「コンテナコンテナには脳の凍結が含まれています。 –
クラップス、私には明らかな問題を提起するのはひどいです。 A - > HTMLA; B - > HTMLB; HTMLAをHTMLBにドラッグします。 ...? AをBの配列に追加します。 – sdasdadas