タイトルが曖昧で申し訳ありませんが、私が尋ねようとしていることを要約する方法が完全にはわかりません。
まず、これが私がこれまでに持っているもののjsFiddleです。
HTML5キャンバス要素の使い方とjsOOPの使い方を学び始めたところです。
フィドルからわかるように、長方形のクラスを作成し(冗長かもしれませんが、できるだけ多くの正方形を作成できるように)、それを参照して描画します。ただし、を設定するheight = width
と、常に非正方形になります。私はキャンバスを使用するのは比較的新しいですが、正方形の高さと幅はキャンバス要素のサイズに比例しているため、キャンバス要素の高さと幅は比例してはならないためだと思います(割り当てられたパーセント値ではなく明確なピクセルに)。
正方形のサイズをピクセルに設定することでこれを修正できますが、キープレスイベントが呼び出されたときに、正方形がまったく移動しません。
また、ユーザーが矢印キーで正方形を移動できるように、keypressイベントがあります。ただし、コードでフリップフロップを使用しても、上下のキーの値が反転しているように見えますか?そして、左/右のキーは何もしませんか?
そして、私も正方形を上下に動かすことができるのは一度だけですか?ユーザーが対応するボタンを押し続ける限り、私のコードでx / y値を増やすことはできませんか?
誰かがこれをチェックして、私が間違っていることについていくつかの指針を私に与えることができれば、それは素晴らしいことです!私はこれを使ってたくさんの新しいことを試みています。それは単なる学習体験なので、もしあなたがそんなに傾いていると感じたら、私が学ぶのを手伝ってください!