jQuery(函数)做了什么

时间:2012-04-06 09:20:16

标签: javascript jquery

我正在阅读javascript网络应用程序,作者正在使用以下代码:

mod.load = function(func){
    $($.proxy(func, this));
};

有人可以帮助我理解为什么从jQuery.proxy返回函数在jQuery包装内。

这是否与:

相同
mod.load = function(func){
    var temp = $.proxy(func, this);
    temp();
};

3 个答案:

答案 0 :(得分:2)

它们不一样,但它们具有相同的效果。你的第二个例子直接执行返回的函数,而jQuery(function)将它绑定到类似$(document).ready()的onload。 mod.load可能 onload,所以这没什么区别。

请参阅http://api.jquery.com/jQuery/#jQuery3

答案 1 :(得分:1)

使用函数参数调用$()相当于将$(document).ready()应用于该函数:它在调用之前等待DOM准备就绪。

因此,在第二个示例中,可以在DOM准备好之前调用temp(),具体取决于mod.load()本身运行的时刻。

答案 2 :(得分:0)

是一样的,只是一个简写。