&引用;“一股烟”;效果javascript精灵动画

&引用;“一股烟”;效果javascript精灵动画,javascript,animation,settimeout,jquery-animate,Javascript,Animation,Settimeout,Jquery Animate,这段代码和动画在jQuery1.4.4及以下版本上可以完美地工作,但在更高版本上则不行。有谁能解释一下这个问题,并帮助开发一个可以使用最新jQuery的版本吗。我在下面提供了一把小提琴 poof效果基本上依赖于调整背景位置来创建css精灵动画,但它依赖于新的jQuery。jQuery的动画不再适用于精灵动画。我必须使用setTimeout滚动我自己的。该效果的灵感来源于用于从OS X dock中移除项目的效果 精灵: 相关JS代码: function animatePoof() {

这段代码和动画在jQuery1.4.4及以下版本上可以完美地工作,但在更高版本上则不行。有谁能解释一下这个问题,并帮助开发一个可以使用最新jQuery的版本吗。我在下面提供了一把小提琴


poof效果基本上依赖于调整背景位置来创建css精灵动画,但它依赖于新的jQuery。

jQuery的动画不再适用于精灵动画。我必须使用
setTimeout
滚动我自己的。该效果的灵感来源于用于从OS X dock中移除项目的效果

精灵:

相关JS代码:

function animatePoof() {
    var bgTop = 0,
        frame = 0,
        frames = 6,
        frameSize = 32,
        frameRate = 80,
        puff = $('#puff');
    var animate = function(){
        if(frame < frames){
            puff.css({
                backgroundPosition: "0 "+bgTop+"px"
            });
            bgTop = bgTop - frameSize;
            frame++;
            setTimeout(animate, frameRate);
        }
    };

    animate();
    setTimeout("$('#puff').hide()", frames * frameRate);
}
函数()的{ var bgTop=0, 帧=0, 帧=6, frameSize=32, 帧率=80, 泡芙=$(“#泡芙”); var animate=函数(){ 如果(帧<帧){ puff.css({ 背景位置:“0”+bgTop+“px” }); bgTop=bgTop-帧大小; frame++; 设置超时(动画、帧速率); } }; 制作动画(); setTimeout(“$('#puff').hide()”,frames*帧速率); } 完整的工作示例,包括HTML和CSS:
你也可以使用这个(我的)库:。它与最新版本的jQuery配合使用。

您需要一个插件。请参阅可能的副本