Javascript jQuery设置粘贴人跳跃动画(设置顶部动画,然后设置底部动画)

Javascript jQuery设置粘贴人跳跃动画(设置顶部动画,然后设置底部动画),javascript,jquery,html,jquery-animate,Javascript,Jquery,Html,Jquery Animate,我在做这种游戏。只是一个在屏幕上“走动”的贴纸工。如果你按“向上”,我想加上跳跃 这是我的代码(没有跳转): 出于常识,我使用了排队动画并做到了这一点(我减少到只有case arrow.up,因为它是唯一相关的部分): 由于某种原因,它不起作用。不管怎样。这里是 并修改: case arrow.up: if (!sitting.is(':visible') && jumping===false) { jumping = true;

我在做这种游戏。只是一个在屏幕上“走动”的贴纸工。如果你按“向上”,我想加上跳跃

这是我的代码(没有跳转):

出于常识,我使用了排队动画并做到了这一点(我减少到只有case arrow.up,因为它是唯一相关的部分):

由于某种原因,它不起作用。不管怎样。这里是

并修改:

    case arrow.up:
    if (!sitting.is(':visible') && jumping===false) {
        jumping = true;
        image.stop().animate({
            top: '-=150px'
        }, 200, "linear", function(){
          $(this).animate({top: '+=150'}, 300,'linear', function(){
             jumping = false;
          });                 
        });
    }
    break;

这不会保持其原始位置,它会将其一直发送到页面底部..:s@DoorKnob希望是有用的,你明白。。。如果不是的话,你可以问一个问题,当你跳的时候,它会像在地面上一样落地(大约高出50像素),你再也不会碰到地面了。除非你刷新页面。
case arrow.up:
                    if (!sitting.is(':visible')) {
                        image.animate({
                            top: '+=10px'
                        }, 200, "linear");
                        image.animate({
                            bottom: '+=10px'
                        }, 200, "linear");
                    }
                    break;
var sitting = $('#sitting'),
    image = $('#img'), // COMMA HERE 
    jumping = false ;  // ADD THIS 
    case arrow.up:
    if (!sitting.is(':visible') && jumping===false) {
        jumping = true;
        image.stop().animate({
            top: '-=150px'
        }, 200, "linear", function(){
          $(this).animate({top: '+=150'}, 300,'linear', function(){
             jumping = false;
          });                 
        });
    }
    break;