首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery动画卡顿

jQuery动画卡顿
EN

Stack Overflow用户
提问于 2013-04-08 08:53:14
回答 1查看 415关注 0票数 1

我再次访问以获取您丰富的知识:

我正在开发一个使用jQuery的小而简单的游戏(就像jQuery的练习一样)。我正在尝试阻止一个bug,它似乎会使运动在第一步就卡顿。要复制这一点,只需按住一个方向。它卡顿了一次,然后平稳地移动。

我使用的代码是:

代码语言:javascript
复制
$(document).keydown(function(e) {
switch (e.which) { 
case 37:
    $('#move').animate({
        left: '-=2'
    },1); //left arrow key
    break;
case 38:
    $('#move').stop().animate({
        top: '-=20' 
    }).animate({
            top: '+=20'        
    }); //up arrow key (jump)
    break;
case 39:
    $('#move').animate({
        left: '+=2'
    },1); //right arrow key 
    break;

}
});

它可能是一些非常愚蠢的东西,比如我遗漏的一个属性,但我不能完全理解它。

编辑:我在不同的浏览器中尝试过,仍然得到相同的问题。

编辑2:我已经把它放在jsfiddle上了,虽然它不像我自己的浏览器那样工作,但它应该会给你一个概念:P http://jsfiddle.net/urAGB/4/

EN

回答 1

Stack Overflow用户

发布于 2013-04-08 10:10:06

heres my solution。我只修改了javascript。

实际上,绕过这样的问题有点复杂,这解释了大众代码。下面是一个演练:

  • 在按键时间和检测到按键被按下的时间之间自动移动对象的功能
  • 我们在特定条件下激活和停用此功能

我已经通过更改bufferTimeout变量,使您可以轻松地调整这个所谓的延迟,直到检测到按住键为止。您可以随意将所有代码放入一个函数中,甚至将其放入外部javascript文件中以便于使用。

如果它解决了您的问题,请尽情享受:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15869683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档