87,901
社区成员
发帖
与我相关
我的任务
分享
(function ($) {
$.extend({
});
})(jQuery || $);
//定义普通函数并立即执行有两种方式:
//方式一
function foo(a){...};
foo(a)
//方式二
( function foo(a){...};)(a)
//定义匿名函数并立即执行
//因为匿名函数没有名字,不能像上面foo()那样进行执行,所以只有一种方式,即上面的第二种方式:
(function(b){...})(b)
(2)至于(jquery||$),其实一般情况没必要,只需要传入一个即可($)或者(jquery),因为只要你引入了jquery的js文件,全局变量$和jquery是一样的。[/quote]请教一下,这两种有什么不一样
$(function(){})和(function(){})
[/quote]
12楼的回答比较详细,赞一下。
简单来说:
$(function(){...})这是jquery的一种用法,相当于window.onload=function(){...};
(function(){})这是声明了一个匿名函数,普通函数的声明可以“function name(){}”,但是匿名函数没有名字,如果按照“function(){}”这样来声明会被js解析为错误,所以要用“(function(){})”这样来声明,要执行这个匿名函数的话就可以直接+(),即 (function(){})()。[/quote]
(function(){})如果不加后面的括号就不立即执行,声明这个匿名函数就没意义了吗?
//定义普通函数并立即执行有两种方式:
//方式一
function foo(a){...};
foo(a)
//方式二
( function foo(a){...};)(a)
//定义匿名函数并立即执行
//因为匿名函数没有名字,不能像上面foo()那样进行执行,所以只有一种方式,即上面的第二种方式:
(function(b){...})(b)
(2)至于(jquery||$),其实一般情况没必要,只需要传入一个即可($)或者(jquery),因为只要你引入了jquery的js文件,全局变量$和jquery是一样的。[/quote]请教一下,这两种有什么不一样
$(function(){})和(function(){})
[/quote]
12楼的回答比较详细,赞一下。
简单来说:
$(function(){...})这是jquery的一种用法,相当于window.onload=function(){...};
(function(){})这是声明了一个匿名函数,普通函数的声明可以“function name(){}”,但是匿名函数没有名字,如果按照“function(){}”这样来声明会被js解析为错误,所以要用“(function(){})”这样来声明,要执行这个匿名函数的话就可以直接+(),即 (function(){})()。[/quote]
(function(){})如果不加后面的括号就不立即执行,声明这个匿名函数就没意义了吗?[/quote]
匿名函数和普通函数其实是一样的,对于一个函数,声明了却不执行,就等于占着茅坑不便便一样。
//定义普通函数并立即执行有两种方式:
//方式一
function foo(a){...};
foo(a)
//方式二
( function foo(a){...};)(a)
//定义匿名函数并立即执行
//因为匿名函数没有名字,不能像上面foo()那样进行执行,所以只有一种方式,即上面的第二种方式:
(function(b){...})(b)
(2)至于(jquery||$),其实一般情况没必要,只需要传入一个即可($)或者(jquery),因为只要你引入了jquery的js文件,全局变量$和jquery是一样的。[/quote]请教一下,这两种有什么不一样
$(function(){})和(function(){})
[/quote]
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是一样的。[/quote]请教一下,这两种有什么不一样
$(function(){})和(function(){})
<script type="text/javascript">
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是一样的。
//这一部分是个匿名函数,只不过用()括起来了,方便在在传入参数((jquery||$))后立即执行
(function ($) {
...
})
//这一部分是匿名函数的具体执行,即:
//用jquery的extend函数来扩展,至于具体扩展什么就要看$.extend()中传什么了
$.extend({
})
//这一部分是给匿名函数执行时传入的参数(即jquery)
(jQuery || $);