【发布时间】:2015-11-10 00:47:25
【问题描述】:
当用户在网站上向下滚动时(使用 onepage-scroll 的 afterMove 回调),我触发了一组动画,并且在为某些元素设置动画时,意外地多次调用同一个函数。
使用这个,我没有问题:
base = $('section[data-index="' + index + '"]');
base.find('h1').animate({opacity: 0.1}, 3000);
console.log('Finished #' + index);
在转到第 3 节后,我在控制台上有正确的输出。
Finished #2
Finished #3
但是当我尝试使用表单时,例如,
base.find('#my-form-id').animate({opacity: 0.1}, 3000);
这是输出:
Finished #2
Finished #3
Finished #2
Finished #3
只有在动画结束时才注册最后两个日志。
导致这种行为的原因是什么?
【问题讨论】:
-
您应该发布代码以显示您如何“尝试使用表单”
-
@thanksd 你说得对,我应该澄清一下。
-
您还应该发布您的函数和事件调用,因为这些是最有可能出现问题的地方
-
你能在JSFiddle分享你的代码吗?
标签: javascript jquery animation velocity.js