以下では、$記号はjQueryを参照していると表示されています。方法を理解するのに助けが必要ですか?
jQuery(function($){
// Here `$` refers to jQuery
});
以下では、$記号はjQueryを参照していると表示されています。方法を理解するのに助けが必要ですか?
jQuery(function($){
// Here `$` refers to jQuery
});
次のような関数をjQueryに渡すと:
jQuery(function() {
...
});
これは、jQueryの「ドキュメント対応」ハンドラーを使用するのと同じです。
jQuery(document).ready(function() {
...
});
ただし、その関数に渡される引数は、実際にはグローバルjQueryオブジェクト自体です。そのようなハンドラーのほとんどがそのパラメーターを使用しないというだけです。したがって、実際の署名は次のとおりです。
jQuery(document).ready(function($) {
...
});
したがって、その関数内に$
は、グローバルjQueryオブジェクトのローカルエイリアスがあります。変数名は任意の名前にすることができます$
が、の一般的なエイリアスでjQuery
あり、を呼び出さない限り、デフォルトのグローバルエイリアスですjQuery.noConflict()
。
これについては、 http: //api.jquery.com/ready/の「jQuery名前空間のエイリアシング」の段落で詳しく説明されています。
それがどのように可能であるかを示すための単なる例
function externalLibrary(b) {
if(typeof b === 'function') {
b(externalLibrary);
}else {
// other stuff
}
}
var myFunc = function(aliasOfExternalLibrary) {
// here aliasOfExternalLibrary is a reference to externalLibrary
}
externalLibrary( myFunc );
jQueryは同じことをします(もう1つの複雑なシステムで)
その関数はいわゆる匿名関数であり、jQueryは最初のパラメーターthisを使用してその匿名関数を実行します。
したがって、理解するためだけに、次のようになります。
function jQuery(xx) {
xx(this);
}