jQuery 中 jQuery(function(){})与(function(){})(jQuery) 的区别

jQuery 中 jQuery(function(){})与(function(){})(jQuery) 的区别

原文:https://www.cnblogs.com/xfcao/p/8652000.html

1、jQuery(function(){})

$(document).ready(function(){
  // 在这里写你的代码...
});
// 我们平常通过 jQuery编写的 如 $('#input').change(function(){}) 都是类似的,在DOM加载完成后才会执行,进行一些页面的初始化操作,或者事件响应操作

在DOM加载完成时运行的代码

2、(function(){})(); —— 既 匿名声明后即刻调用函数

立即执行函数;相当于先申明一个函数,声明完后直接调用

**如果参数如: **

(function(str){alert(str)})("output"));

相当于:

function OutPutFun(str){alert(str);};OutPutFun("output");
function aa($){} 
aa(jQuery);

是初始化jquery对象的惯用方法.

通俗点说就是在页面DOM加载完成后(不包括图片下载完成)执行你需要的代码,由于不包括图片下载,所以比window.onload效率高.
不过这个东西,有的时候会使页面跳动,很多JQUERY插件都是在加载完成后,才改变样式的,页面会有跳动或闪动的感觉.比如ui.tab这个插件,页面元素一多,全部显示出来了,它才形成TAB,很晕的说

3、(function(){})(jQuery) —— 用于存放开发插件的代码

(function ($) {
        $.fn.test111 = function () {
            alert('test')
        }
    })(jQuery);

用于存放开发插件的代码,执行其中代码时DOM不一定存在,所以直接自动执行DOM操作的代码请小心使用。

posted on 2022-01-28 16:59  OwlInTheOaktree  阅读(77)  评论(0编辑  收藏  举报