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);
It is actually an anonymous method of executing () (para), except that the jquery object is passed.
Iii. Summary
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 to automate DOM operations directly.
Iv. Expansion 1
(function ($) {...}) (JQuery) is actually an anonymous function that does not know that a friend can continue to look down.
This is actually an anonymous function.
Function (ARG) {...}
This defines an anonymous function with the parameter arg.
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)
This is equivalent to defining an anonymous function with a parameter of ARG, and calling this anonymous function as a parameter to Param.
and (function ($) {...}) (jquery) is the same, the reason that only use $ in formal parameters is to not conflict with other libraries, so the argument with JQuery, equivalent to:
var fn = function ($) {...};
FN (jQuery);
V. Expansion 2
(function ($) {}) (jquery) is the usual way to initialize jquery objects.
(Funtion () {}) (); Execute the function immediately; it is equivalent to declaring a function, calling it directly after the declaration, and if the parameters are as follows:
(Funtion (str) {alert (str)}) ("Output")) ; equivalent: funtion outputfun (str) {alert (str);};o Utputfun ("Output");
"Reprint" http://www.cnblogs.com/swjm119/archive/2011/12/19/2293125.html
The difference between jquery (function () {}) and (function () {}) (jquery)