可以将宽松方法应用于jQuery scrollto:

$("#scroller").scrollTo(target,1000,{axis:'x',easing:'linear'});

这并不简单...我现在开始使用jQuery(长期使用原型),所以这无疑是我的错误。我需要一个放松插件来实现这一目标吗?此插件的宽松选项是什么(如果有的话)?文档尚不清楚。谢谢。

有帮助吗?

解决方案

来自JQuery:

jQuery库中唯一的轻松实现是默认值,称为swing,一个 以恒定的速度进行,称为线性.

所以 easing: 'linear' 不应该显示任何东西。尝试 easing: 'swing'.

其他提示

$("#scroller").scrollTo(target, 1000, {easing: 'easeInOutCirc'});

在这里可以找到大量宽松的清单:

http://easings.net/

linear 是放松的默认选项:线性动画=>直至SEC中的点。

尝试 easing:'elasout'

我知道这是一个古老的线程,但我找到了它,对我有所帮助。正如Palmsey在其中一条评论中提到的那样,Scrollto演示显示了使用宽松的示例,但实际上并没有提到它已经从宽松插件中借了一小片代码。 http://gsgd.co.uk/sandbox/jquery/easing/. 。 scrollto上的演示在init.js文件中包含此代码

    //borrowed from jQuery easing plugin
    //http://gsgd.co.uk/sandbox/jquery.easing.php
    $.easing.elasout = function(x, t, b, c, d) {
        var s=1.70158;var p=0;var a=c;
        if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
        if (a < Math.abs(c)) { a=c; var s=p/4; }
        else var s = p/(2*Math.PI) * Math.asin (c/a);
        return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
    };

但是,如果包含上面提到的整个宽松插件,则可以使用上述任何功能 http://easings.net/

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top