0

我不想让它遵循设定的路径,因为路径是可变的。但我正在尝试将对象设置为从 Idrop 它的位置以明显的模式落下。

$(".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,您的代码如下所示:

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 回答