2010-11-25 53 views
7

不容應用的緩動方法將jQuery ScrollTo:jQuery的ScrollTo緩解

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

這doesn't緩解什麼... 即時通訊開始使用jquery現在(已經使用原型長),所以這是當然,我的錯誤。 我需要一個緩動插件來實現嗎?這個插件(如果有)的緩解選項是什麼?文件不清楚這一點。 謝謝。

+0

你用什麼插件提到的功能是什麼?該方法不是jQuery API的一部分。 – 2010-11-25 09:15:49

回答

9

從jQuery的:

中的jQuery庫只寬鬆的實現是默認的,所謂的搖擺,以及一個進展以恆定的速度,稱爲線性。因此easing: 'linear'不應該顯示任何東西。 嘗試easing: 'swing'

1

linear是寬鬆的默認選項:直線動畫=>直接在一秒內的點。

嘗試easing:'elasout'

+0

nope。 'elasout'打破了它。會很好,但不會。 – JoaoPedro 2010-11-25 09:37:54

+0

它什麼也沒有打破,它是在主頁上的一種簡化類型的scrollTo。更特別的是,它是演示中使用的:http://demos.flesler.com/jquery/scrollTo/(點擊'easing')。如果你想要一個精確的寬鬆(還有更多),你應該有精確的寬鬆。 – Shikiryu 2010-11-25 09:47:57

+0

如果您在默認情況下查看緩存函數在init.js中而不是scrollTo中的代碼。它是jQuery easing插件的一部分:http://gsgd.co.uk/sandbox/jquery.easing.php – palmsey 2011-06-16 21:58:37

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

及緩和的大名單可以在這裏找到:

http://easings.net/

1

我知道這是一個古老的線程,但我發現它,它幫助了我。正如Palmsey在其中一個評論中提到的那樣,scrollTo Demo顯示了一個使用緩動的例子,但實際上並沒有提到它已經從http://gsgd.co.uk/sandbox/jquery/easing/的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/