0

パスは可変であるため、設定されたパスをたどろうとはしていません。しかし、オブジェクトをドロップする場所から目立つパターンで落下するように設定しようとしています。

$(".gQ_sprite").mouseup(function() {        

        //test condition to see if collides with a box etc...
        collision1 = $("#" + currentClickedDivId).collision(".gQ_group, .box");
        if(collision1.length > 0)
        {
                       //irrelevent
        }
        else
        {
            //figure out yarnball Id...
            i = wordLength - 1
            yarnBallIdNumber = currentClickedDivId.charAt(10);
            yarnBallPositionFromStart = i - yarnBallIdNumber
            initialMovedYarnBallXPosition = yarnBallPositionFromStart * yarnSpacing

            initialMovedYarnBallXPosition = initialXYarnPosition - initialMovedYarnBallXPosition


            $("#" + currentClickedDivId).xy(initialMovedYarnBallXPosition ,yarnYPosition);
        }

現在、私のコードは、ユーザーがオブジェクトを離した後、オブジェクトをその場所にフラッシュするだけです。最善の方法を考えられず、考えられない場合は、オブジェクトを「ゆっくり」戻そうとしています。

これまでのところ、ループを使用してオブジェクトの位置を遅延させて減算 (または加算) することを考えていますが、私が知らないオブジェクトを移動するより良い方法があるかもしれません。

何か案は?

4

1 に答える 1

1

あなたができることは、そこで説明されているように、jQuery を使用して CSS プロパティ以外のものをアニメーション化することです: https://coderwall.com/p/fn2ysa

あなたの場合、スプライトを currentX から destinationX に 1 秒で移動させるには、コードは次のようになります。

var from    = {x: currentX};
var to      = {x: destinationX};
$(from).animate(to,{duration: 1000, step: function(step){
    $(mySprite).x(step);
}});
于 2013-06-11T00:28:45.560 に答える