2012-05-22 110 views
0

我想延長的jQuery UI的一個具體方面:https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.jseaseInElastic的源代碼,看看下面的代碼片段如何擴展jQuery庫

搜索:

easeInElastic: function (x, t, b, c, d) { 
    var s=1.70158;var p=0;var a=c; alert(''); 
    if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*9.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-=1)) * Math.sin((t*d-s)*(2*Math.PI)/p)) + b; 
}, 

我需要稍微修改代碼,但我不想複製整個庫。 如何將修改後的片段包含在單獨的.js文件中,以便覆蓋原始文件?

編輯:

了所有的建議的方法,這僅僅是工作的一個:

$.extend($.easing, 
{ 
    easeInElastic: function (x, t, b, c, d) { 
      alert(''); 
     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-=1)) * Math.sin((t*d-s)*(2*Math.PI)/p)) + b; 
    } 

}); 

回答

1
$.fn.easeInElastic = function(x,t,b,c,d){...} 

或者使用$.extend();

3

用你自己的方法覆蓋該特定的方法。

$.easing.easeInElastic = function(... 

只要您的附加.js文件與該代碼放在jqueryui.js之後,它會覆蓋它。