Recently found in the project JS file at the end of this code, for the front-end technology is weak, I am still a little dizzy, good to see the relevant information, now explained as follows:
(function ($) {
$.plugin = new Org.plugin.Plugin ();
Window.plugin=$.plugin;
}) (JQuery);
In fact, this function can be seen as two parts: one is the function definition part functions ($) {$.plugin = new Org.plugin.Plugin (); window.plugin=$.plugin;} The other is the Call Function section (jQuery)
When calling a function, the parentheses and arguments are written after the function, and because of the precedence of the operator, the function itself needs parentheses, namely:
(Function (ARG) {...})(Param), only $ is used in formal parameters to not conflict with other libraries, so the arguments are used with jquery
In fact, it equals var fn = function ($) {...};
FN (jQuery);
You can actually understand that, but be aware that FN doesn't exist.
That function is defined directly and then runs. "Compression" looks like this.
(function ($) {...}) (JQuery)
**************************************************************************
Simple to understand is (function ($) {...}) (jQuery) defines a number of functions that need to be pre-defined
The $ (function () {}) is used to run \ Execute those preprint-defined functions after the DOM loading is complete.
**************************************************************************
Share some of the lessons learned when developing jquery plugins. First, look at
JQuery (function () {}), all written as
JQuery (document). Ready (function () {});
The meaning is that the ready () method is executed after the DOM has been loaded. Second, look again
(function () {
}) (JQuery);
JQuery (function () {...}); The code that holds the DOM object for the operation, and the DOM object already exists when the code executes it. cannot be used to store code that develops plug-ins, because jquery objects are not passed, and external methods (functions) cannot be called by Jquery.method.
(function () {}) (JQuery), which is used to store the code that develops the plug-in, and the DOM does not necessarily exist when executing the code, so be careful with the code that performs the DOM operation directly.
(function ($) {...}) (jQuery) meaning