带有缓动的JQuery ScrollLeft

时间:2015-01-02 20:15:54

标签: javascript jquery jquery-easing

我正在尝试使用缓动方式滚动左侧。

如果我拿出轻松的话,它滚动就好了

$("#content").animate({ 
    scrollLeft: '+=' + $(window).width()
}, "slow");

但是当我尝试为动画添加缓动时

$("#content").animate({ 
    scrollLeft: '+=' + $(window).width()
}, "slow", "easeInOutBounce");

我收到的错误如下: TypeError: m.easing[this.easing] is not a function

任何帮助将不胜感激

3 个答案:

答案 0 :(得分:2)

easeInOutBounce不是默认的jQuery缓动集的一部分。您需要包含jQuery UI的缓动库才能访问它。要么只包含整个jQuery UI,要么自己构建一个只包含缓动组件的custom version of the library。在包含jQuery之后和代码之前包含此内容。

答案 1 :(得分:1)

你必须添加' easeInOutBounce'到jquery缓动数组,否则你只能使用' linear'或者'摇摆'。

有一些插件可以为jquery添加缓动曲线,jquery-ui添加了许多插件,包括' easeInOutBounce'

答案 2 :(得分:1)

我认为您需要JQuery UI才能访问此类缓动。

来源(JQuery documentation):

  

缓解

     

.animate()的剩余参数是一个命名要使用的缓动函数的字符串。缓动函数指定动画在动画中的不同点处进行的速度。 jQuery库中唯一的缓动实现是默认的,称为swing,以及一个以恒定速度进行的实现,称为线性。使用插件可以获得更多的缓动功能,尤其是jQuery UI套件。