滚动停止时的 JavaScript 停止动画
Javascript stop animation when scrolling stops
我正在尝试在用户滚动时播放动画,并在用户停止时停止。
我对javascript知之甚少,但是通过四处寻找和适应,我已经让它开始滚动,但随后它继续前进,我不知道如何在滚动结束后立即停止。
这是我到目前为止所拥有的:
$(window).scroll(function() {
$('#square').animate({
top: '70px',
queue: true,
}, 900).animate({
top: '5px',
queue: true
}, 1000);
});
小提琴
任何帮助非常感谢!
您可以按如下方式使用计时器:
VaR 计时器;
$(window).scroll(function() {
clearTimeout(timer);
timer = setTimeout( refresh , 150 );
$('#square').animate({
top: '70px',
queue: true,
}, 900).animate({
top: '5px',
queue: true
}, 1000);
});
var refresh = function () {
// do stuff
$('#square').stop().clearQueue();
};
小提琴
参考:用户停止滚动时的事件
使用来自另一个堆栈溢出问题的引用更新了您的 JSFiddle。
这将在发生scroll
事件以及scroll
事件停止时显示给您。
不过,你想要的核心是$('#square').stop().clearQueue();
。
我已经用下划线的去抖动和jquery完成了这个:
https://github.com/michaelBenin/node-startup/blob/master/client/js/core/scroll_manager.js
要停止动画,请参阅:http://api.jquery.com/stop/
另请参阅此动画库:http://julian.com/research/velocity/
相关文章:
- 如何使用css动画/javascript使具有背景图像的元素出现
- 一个动画javascript中包含多个图像
- 循环动画javascript,SetInterval只工作一次
- 关闭时如何制作动画?[Javascript]
- 增强动画(JavaScript+CSS)
- 没有jQuery的动画javascript
- 删除所有可拖动元素时显示按钮/播放消息.Adobe Edge动画Javascript/Jquery
- 将元素从后到前动画javascript
- 动画javascript scrollLeft使用XUI
- 如何通过堆叠图像动画Javascript
- 如何编辑URL名称,同时动画JavaScript锚滚动
- 动画Javascript显示/隐藏按钮两次
- 动画Javascript显示/隐藏按钮
- 动画javascript框架
- 谷歌I'm感觉幸运按钮动画javascript
- 我如何保持我的调整大小动画(javascript)不会弄乱我的(css)"浮动“;布局
- 调整图像大小时需要更平滑的动画javascript
- CSS 动画 + Javascript 回调
- Canvas动画javascript函数和全局变量
- 动画计数器没有动画- Javascript