0

我使用 spritely.net 制作动画它为您提供了启动动画的功能和停止动画的功能。

我希望动画在有人开始向下滚动页面时开始,并在他们停止滚动时停止。

我能够做到这一点,但问题是 .scroll 每秒触发动画多次启动,这使动画变得疯狂。您可以在此处查看是否向下滚动页面:

http://jsfiddle.net/atyM6/

允许正常运行时的动画应该看起来更像这样:

http://jsfiddle.net/wx7qb/1/

我试过这个插件

http://benalman.com/projects/jquery-throttle-debounce-plugin/

还有这个 http://documentcloud.github.io/underscore/#throttle

但是无法让我的 jquery 准备好成为我可以传递给它的好函数,并使动画工作。我还看到其他人在不使用这些插件的情况下管理了 curtail .scroll(),但我无法调整他们的代码以适应我的目的。

这是我的 jquery,它启动和停止动画 - 我在用户滚动时的感知。

 $(window).scroll( function() {
 $('#bird')
.sprite({fps: 1, no_of_frames: 16, rewind: true })

});

$(window).scroll(function() {   
clearTimeout($.data(this, 'scrollTimer'));
 $.data(this, 'scrollTimer', setTimeout(function() {
 $('#bird').spStop()

}, 250));

});
$(window).scroll(function() {


$('#bird').spStart()

});
4

0 回答 0