JQuery Tools Scrollable - 停止动画?

时间:2013-04-22 15:20:25

标签: javascript jquery jquery-tools scrollable

我有一个输入框,然后使用seekTo上的可滚动keyup方法转到特定幻灯片。问题是,如果某人快速输入,则可滚动的队列会变大,并且动画停止需要一段时间。

我想要的是keyup前一个动画停止(除非输入为空)并且新动画开始。我试过把.stop()放在不同的地方,但似乎没什么用。

这是一个类似于我正在做的事情的小提琴:http://jsfiddle.net/QaMZH/

在框中输入一个数字(例如:1)然后将其更改为另一个数字(例如:2)会将可滚动设置为该幻灯片编号的动画,但是快速更改数字会排出一堆可能需要一段时间的动画光洁度。

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,在搜索了更详细的文档后失败了,我只是挖掘了代码。

事实证明,您需要做的就是在.seekTo()之前调用它:

api.getItemWrap().stop(true, false);
api.seekTo($(this).val(), 1000);

其中getItemWrap()返回动画发生的目标jQuery元素。

请参阅http://jsfiddle.net/QaMZH/4/修改后的版本如何运作。

这是有效的,因为.seekTo()方法会调用元素上的jQuery .animation()方法,您可以cancel jQuery animations any time with .stop()