2016年2月24日水曜日

JQuery の function($) $(function()


JQuery のfunction($)   $(function() は見ただけでは、良く分かりません。
個人的に、しばらく悩まされましたので、調べた結果を共有します。

1、実行タイミング
2、定義内容の使用スコープ

上記の2点をまとめました。


■(function($){})(jQuery) は、

  "$" をjquery として使用することを保証する形。
  読み込み時に実行されます。定義内容のスコープは、定義内部だけ。
  一般的に、
  $.fn.method=function()
  の形で、新なmethodが定義され、このメソッドはjQueryメソッドとして使えます。
  例えば、$(セレクター2).method()

■$(function() は、
  HTMLのロードが終了したとき、実行されます。
  定義内容のスコープは、定義内部だけ。


■参考情報

jQueryを使う場合には、必ず、初めに、
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
を読み込みます。
この時点で、jQueryオブジェクトを使えるようになります。
次に、jQueryオブジェクトに新たに、プラグインを加えていきます。
その時に、読み込みと同時に行われる関数が必要となります。
そこで、
(function($){
Var a,b,c・・・
・・・・・・
$.fn.method=function(){
・・・・・・
}
})(jQuery)
を実行し、メソッドを新たに定義します。
HTMLのロードが終了したとき、
$(function(){
        $(セレクター).click(function(){
                $(セレクター2).method();
}
})
という形で、アクションを定義できます。
また、宣言された変数a,b,cはグローバル関数ではなく、(function($){ 関数外部からアクセスすることはできません。


0 件のコメント:

コメントを投稿