'(function($) {})(jQuery);' とは何ですか?本当にそうしますか?
質問:
次の jQuery プラグイン構文の目的とバリエーションを誰かが明確にしてもらえますか?
<br>(関数($) {})(jQuery);<br>
これらの例との違いは次のとおりです:
タイプ 1:
(関数($) {
$.fn.jPluginName = { }, $.fn.jPluginName.defaults = { }
})(jQuery);
タイプ 2:
<br>(関数($) {</p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">$.jPluginName = { }
})(jQuery);
型3:
<br>(function($){</p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">//Attach this new method to jQuery $.fn.extend({ var defaults = { } var options = $.extend(defaults, options); //This is where you write your plugin's name pluginname: function() { //Iterate over the current set of matched elements return this.each(function() { //code to be inserted here }); } });
})(jQuery );
答え:
速報Down '(function($) {})(jQuery);'
このコード スニペットは、一般に、jQuery を引数として渡し、囲まれた関数をすぐに呼び出すクロージャを定義するために使用されます。これは以下と同等です:
<br>function($) {}($);<br>
この手法はローカル スコープを作成するために使用されます。プラグインの場合、他のプラグインまたはグローバル変数との競合を防ぎます。
プラグイン構文のバリエーション:
タイプ 1:
この構文はメソッドとデフォルトのオプションを $.fn に添付し、$ としてアクセスできる jQuery プラグインを効果的に作成します。 (要素).jPluginName().
タイプ2:
この構文は、プラグインを作成するのではなく、jQuery のコア機能を拡張します。これは、トラバーサル関数やその他のユーティリティを jQuery 自体に追加する場合に便利です。
タイプ 3:
この構文はタイプ 1 に似ていますが、$.fn.extend を使用してアタッチします。 jQuery プロトタイプへのプラグイン メソッド。これは、プラグインを作成するための構造化されたモジュール式の方法を提供します。
使用する構文:
Type 1 を使用して、操作するプラグインを作成する必要があります。 DOM 要素。jQuery コアを拡張する場合は、
Type 2 を使用する必要があります。
タイプ 3 は、ほとんどのプラグイン開発シナリオで推奨される選択肢です。
以上がjQuery プラグインを作成するにはどのような方法がありますか?また、それらの機能と使用例はどのように異なりますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。