2011-08-06 9 views
1

jqueryオブジェクトをtweenメソッドで直接拡張しました。 これは、jqueryを使用するすべてのページに適用されますか、または私が拡張を行ったページ内にのみ適用されます。たとえば、これはサブレベルのページで、以下のようなスクリプトが添付されていたとします。Jqueryは質問を延長します

sublevel_page.js

$(function(){ 
    /// some script to do with my sub level page 

    // my easing script 
     jQuery.extend(jQuery.easing,{ 
      easeInOutExpo: function (x, t, b, c, d) { 
       return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b; 
      } 
    }) 

}) 

それから私は持っても、それに接続されているスクリプトは、いくつかのグレーがありますhome.js

$(function(){ 
    // my home page code 
    // would I need to add my extend easing code again here or is it part of the 
    // framework once the extend happens in my sublevel_page 
}); 

と呼ばれた私のホームページを言うことができます私はまだ完全に取得していないjqueryの領域とこれは1つです。多くの言語では、アプリケーションの開始レベルでフレームワークを拡張し、フレームワークを使用するすべてのコードに即座に適用されます。 上記の仮定が正しい場合、jqueryを使用する他のページは、ロード時に追加されたjqueryスクリプトをどのように取得するのでしょうか。誰かが私のためにこの主題についていくつかの光を放つことができますか?

答えて

0

jqueryを拡張して独自のプラグインを追加すると、グローバルオブジェクトjQueryまたは$に追加されます。しかし、あなたはあなたがそれらを使用しようとしている他のファイルの前にこの拡張コードを持つファイルを含めることを確認する必要があります。私はこれが理にかなってほしい。

+0

あなたが言っていることから、このイージングをすべてのページで機能させたい場合は、たとえば、それ自体のjsファイル内にある必要があります。 easing.jsを使用するには、このファイルを各ページに追加する必要があります。 。したがって、ページの存続期間中、jqueryのフレームワークに追加されるだけです。スクリプトが添付されていない別のHTMLページに移動すると、そのページはイージングメソッドを使用できなくなります。そのため、jQueryフレームワークはこれまでと同じように拡張されていませんが、ページが存続する間だけです。あれは正しいですか ? – Chapsterj

+0

はい、そのファイルを各Webページに含める必要があります。 Jqueryは純粋なjavascriptであり、そのスコープはページごとのリクエストです。 – ShankarSangoli

0

jqueryを拡張することができない場合は、sublevel_page.jsスクリプトを含める必要があります。含まない場合は、拡張しません。最善の方法は、jquery jsファイルの中にメソッドを配置することです。あなたはいつもそれを持っています。