-2

javascriptにアクセラレーションを追加したいのですが。たとえば、ボタンを押し続けると、オブジェクトは選択した方向に加速して移動します。

誰かがこれを始める方法を提案してもらえますか?キーを押した時間を記録する必要がありますか?はいの場合、どうすればこれを行うことができますか?

ありがとうございました

4

1 に答える 1

2

運動学のドーム研究を行う必要があります。

これは、位置、速度、加速度の間の対応をモデル化する単純なループで実行できます。

簡単な例を作成しました(DOM / CSSにアクセスするためにjQueryを使用):

var position = 0;
var velocity = 0;
var acceleration = 0.1;

var $thing = $("#thing");

var loop = function () {
    $thing.css("left", position + "px");

    position = position + velocity;
    velocity = velocity + acceleration;
}

window.setInterval(loop, 100);

ここで実行できます:http://jsfiddle.net/QAn3Z/

ここで、キー押下検出を追加する必要があります。

これで始められるはずです。より具体的な質問や問題を持って戻ってきてください。「どのように始めればよいか」よりも反対意見が少なくなります;-)

于 2013-01-28T13:32:29.613 に答える