$(function(){}) 这个是jQuery 的domReady(function(){})的简写,作用和window.onload(function(){})一样,指文档加载完后立刻执行,一般用于事件绑定,不过window.onload是在图片加载完之后才执行,domReady则在图片加载之前执行,所以启动速度快一些。(function(){})(),这种方法建立了一个闭包,这个闭包里的 var 不会与外面的var冲突,所以大量的框架使用了这种方式封装代码,特别是$,很多代码框架喜欢用它但定义又不一样。(function($){})(jQuery),则保证了function内部的代码使用的$肯定是jQuery,而不是别的什么东西。
(1)嗯~定义了一个匿名函数,然后立即执行了。其实匿名函数和普通函数一样,只不过是没有名字而已。比如://定义普通函数并立即执行有两种方式: //方式一 function foo(a){...}; foo(a) //方式二 ( function foo(a){...};)(a) //定义匿名函数并立即执行 //因为匿名函数没有名字,不能像上面foo()那样进行执行,所以只有一种方式,即上面的第二种方式: (function(b){...})(b) (2)至于(jquery||$),其实一般情况没必要,只需要传入一个即可($)或者(jquery),因为只要你引入了jquery的js文件,全局变量$和jquery是一样的。请教一下,这两种有什么不一样 $(function(){})和(function(){})12楼的回答比较详细,赞一下。 简单来说:$(function(){...})这是jquery的一种用法,相当于window.onload=function(){...};(function(){})这是声明了一个匿名函数,普通函数的声明可以“function name(){}”,但是匿名函数没有名字,如果按照“function(){}”这样来声明会被js解析为错误,所以要用“(function(){})”这样来声明,要执行这个匿名函数的话就可以直接+(),即 (function(){})()。
(1)嗯~定义了一个匿名函数,然后立即执行了。其实匿名函数和普通函数一样,只不过是没有名字而已。比如://定义普通函数并立即执行有两种方式: //方式一 function foo(a){...}; foo(a) //方式二 ( function foo(a){...};)(a) //定义匿名函数并立即执行 //因为匿名函数没有名字,不能像上面foo()那样进行执行,所以只有一种方式,即上面的第二种方式: (function(b){...})(b) (2)至于(jquery||$),其实一般情况没必要,只需要传入一个即可($)或者(jquery),因为只要你引入了jquery的js文件,全局变量$和jquery是一样的。请教一下,这两种有什么不一样 $(function(){})和(function(){})12楼的回答比较详细,赞一下。 简单来说:$(function(){...})这是jquery的一种用法,相当于window.onload=function(){...};(function(){})这是声明了一个匿名函数,普通函数的声明可以“function name(){}”,但是匿名函数没有名字,如果按照“function(){}”这样来声明会被js解析为错误,所以要用“(function(){})”这样来声明,要执行这个匿名函数的话就可以直接+(),即 (function(){})()。 (function(){})如果不加后面的括号就不立即执行,声明这个匿名函数就没意义了吗?
(1)嗯~定义了一个匿名函数,然后立即执行了。其实匿名函数和普通函数一样,只不过是没有名字而已。比如://定义普通函数并立即执行有两种方式: //方式一 function foo(a){...}; foo(a) //方式二 ( function foo(a){...};)(a) //定义匿名函数并立即执行 //因为匿名函数没有名字,不能像上面foo()那样进行执行,所以只有一种方式,即上面的第二种方式: (function(b){...})(b) (2)至于(jquery||$),其实一般情况没必要,只需要传入一个即可($)或者(jquery),因为只要你引入了jquery的js文件,全局变量$和jquery是一样的。请教一下,这两种有什么不一样 $(function(){})和(function(){})12楼的回答比较详细,赞一下。 简单来说:$(function(){...})这是jquery的一种用法,相当于window.onload=function(){...};(function(){})这是声明了一个匿名函数,普通函数的声明可以“function name(){}”,但是匿名函数没有名字,如果按照“function(){}”这样来声明会被js解析为错误,所以要用“(function(){})”这样来声明,要执行这个匿名函数的话就可以直接+(),即 (function(){})()。 (function(){})如果不加后面的括号就不立即执行,声明这个匿名函数就没意义了吗? 匿名函数和普通函数其实是一样的,对于一个函数,声明了却不执行,就等于占着茅坑不便便一样。
$.extend({
});
})(jQuery || $);
相当于
function func1($){
$.extend({
});
}
func1(jQuery || $);
就是写个方法然后马上执行,传的值为 jQuery 或者 $,哪个有传哪个,都有传第一个
不过(function())() 没有函数名,是匿名函数
(function ($) {
...
})
//这一部分是匿名函数的具体执行,即:
//用jquery的extend函数来扩展,至于具体扩展什么就要看$.extend()中传什么了
$.extend({
})
//这一部分是给匿名函数执行时传入的参数(即jquery)
(jQuery || $);
jquery的源码上 内部用的jQuery,但是引用jquery的js文件后无法调用出jQuery。
但可以使用$来代替jQuery
所以为兼容这2中情况就用了(jQuery || $)
//方式一
function foo(a){...};
foo(a)
//方式二
( function foo(a){...};)(a)
//定义匿名函数并立即执行
//因为匿名函数没有名字,不能像上面foo()那样进行执行,所以只有一种方式,即上面的第二种方式:
(function(b){...})(b)
(2)至于(jquery||$),其实一般情况没必要,只需要传入一个即可($)或者(jquery),因为只要你引入了jquery的js文件,全局变量$和jquery是一样的。
function $(){
alert('$$');
}
(function(window) {
var _$ = window.$
,jQuery = function(){
if(this==window){
return new jQuery()
}
};
jQuery.noConflict = function(){
if ( window.$ === jQuery ) {
window.$ = _$;
}
}
jQuery.prototype = {
each : function() {
alert('each');
},
on : function() { }
}
window.jQuery = window.$ = jQuery;
})(window);
jQuery.noConflict();
var $$ = $();
var $$$ = jQuery().each();
</script>
你里面的$是个参数来的,不要搞乱
//方式一
function foo(a){...};
foo(a)
//方式二
( function foo(a){...};)(a)
//定义匿名函数并立即执行
//因为匿名函数没有名字,不能像上面foo()那样进行执行,所以只有一种方式,即上面的第二种方式:
(function(b){...})(b)
(2)至于(jquery||$),其实一般情况没必要,只需要传入一个即可($)或者(jquery),因为只要你引入了jquery的js文件,全局变量$和jquery是一样的。请教一下,这两种有什么不一样
$(function(){})和(function(){})
$.extend({
});
})(jQuery || $);=========》window.tmp = function($){$.extend({});}
window.tmp(jQuery || $);
delete window.tmp;
这个是jQuery 的domReady(function(){})的简写,作用和window.onload(function(){})一样,指文档加载完后立刻执行,一般用于事件绑定,不过window.onload是在图片加载完之后才执行,domReady则在图片加载之前执行,所以启动速度快一些。(function(){})(),这种方法建立了一个闭包,这个闭包里的 var 不会与外面的var冲突,所以大量的框架使用了这种方式封装代码,特别是$,很多代码框架喜欢用它但定义又不一样。(function($){})(jQuery),则保证了function内部的代码使用的$肯定是jQuery,而不是别的什么东西。
//方式一
function foo(a){...};
foo(a)
//方式二
( function foo(a){...};)(a)
//定义匿名函数并立即执行
//因为匿名函数没有名字,不能像上面foo()那样进行执行,所以只有一种方式,即上面的第二种方式:
(function(b){...})(b)
(2)至于(jquery||$),其实一般情况没必要,只需要传入一个即可($)或者(jquery),因为只要你引入了jquery的js文件,全局变量$和jquery是一样的。请教一下,这两种有什么不一样
$(function(){})和(function(){})12楼的回答比较详细,赞一下。
简单来说:$(function(){...})这是jquery的一种用法,相当于window.onload=function(){...};(function(){})这是声明了一个匿名函数,普通函数的声明可以“function name(){}”,但是匿名函数没有名字,如果按照“function(){}”这样来声明会被js解析为错误,所以要用“(function(){})”这样来声明,要执行这个匿名函数的话就可以直接+(),即 (function(){})()。
//方式一
function foo(a){...};
foo(a)
//方式二
( function foo(a){...};)(a)
//定义匿名函数并立即执行
//因为匿名函数没有名字,不能像上面foo()那样进行执行,所以只有一种方式,即上面的第二种方式:
(function(b){...})(b)
(2)至于(jquery||$),其实一般情况没必要,只需要传入一个即可($)或者(jquery),因为只要你引入了jquery的js文件,全局变量$和jquery是一样的。请教一下,这两种有什么不一样
$(function(){})和(function(){})12楼的回答比较详细,赞一下。
简单来说:$(function(){...})这是jquery的一种用法,相当于window.onload=function(){...};(function(){})这是声明了一个匿名函数,普通函数的声明可以“function name(){}”,但是匿名函数没有名字,如果按照“function(){}”这样来声明会被js解析为错误,所以要用“(function(){})”这样来声明,要执行这个匿名函数的话就可以直接+(),即 (function(){})()。
(function(){})如果不加后面的括号就不立即执行,声明这个匿名函数就没意义了吗?
//方式一
function foo(a){...};
foo(a)
//方式二
( function foo(a){...};)(a)
//定义匿名函数并立即执行
//因为匿名函数没有名字,不能像上面foo()那样进行执行,所以只有一种方式,即上面的第二种方式:
(function(b){...})(b)
(2)至于(jquery||$),其实一般情况没必要,只需要传入一个即可($)或者(jquery),因为只要你引入了jquery的js文件,全局变量$和jquery是一样的。请教一下,这两种有什么不一样
$(function(){})和(function(){})12楼的回答比较详细,赞一下。
简单来说:$(function(){...})这是jquery的一种用法,相当于window.onload=function(){...};(function(){})这是声明了一个匿名函数,普通函数的声明可以“function name(){}”,但是匿名函数没有名字,如果按照“function(){}”这样来声明会被js解析为错误,所以要用“(function(){})”这样来声明,要执行这个匿名函数的话就可以直接+(),即 (function(){})()。
(function(){})如果不加后面的括号就不立即执行,声明这个匿名函数就没意义了吗?
匿名函数和普通函数其实是一样的,对于一个函数,声明了却不执行,就等于占着茅坑不便便一样。