jQuery $function语法

前端之家收集整理的这篇文章主要介绍了jQuery $function语法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

以下函数定义有什么区别?

1:

$(function () {
    //stuff here
}); 

2:

function($){
    //stuff here
}
最佳答案
在#1中,当DOM准备就绪时,jQuery将调用你的函数;将函数传递给$()是$(document).ready(function(){…})的快捷方式; (details here).

在#2中,您正在定义一个函数,但既不调用它也不要求jQuery调用它. (事实上​​,如图所示,这是一个语法错误 – 您需要将其分配给某个东西或调用它以使其在没有名称的情况下有效.)您没有引用任何内容将执行该函数,您将拥有自己打电话.

在#2上,你可能看到的成语是:

(function($) {
    // ...code using `$` for jQuery here...
})(jQuery);

当您希望代码立即运行(不等待DOM准备好)时,这是相当标准的事情,并且您希望在函数中使用$来引用jQuery,但是您希望与noConflict模式兼容.你在插件中看到了很多.它定义了一个接受$参数的函数,shadows全局定义了任何$,然后立即调用传递jQuery作为参数的函数.因此,即使$不会全局映射到jQuery,它也会在该函数中执行.你可以这样做:

(function() {
    var $= jQuery;
    // ...code using `$` for jQuery here...
})();

…但由于某种原因,早期的例子更为常见,即使有点不太清楚. (我想,这是一些较短的字符.)

原文链接:https://www.f2er.com/jquery/428814.html

猜你在找的jQuery相关文章