zoukankan      html  css  js  c++  java
  • jquery的几种写法

    (function($) {

      // to do

    })(jQuery);

    实际上是匿名函数

    function(arg){...}
    这就定义了一个匿名函数,参数为arg

    而调用匿名函数时,(function(arg){...})(param)
    这就相当于定义了一个参数为arg的匿名函数,并且将param作为参数来调用这个匿名函数

    而(function($){...})(jQuery)则是一样的,之所以只在形参使用$,是为了不与其他库冲突,所以实参用jQuery

     $(function(){...});

    这是JQUERY的内置函数,表示网页加载完毕后要执行的意思,

    和JAVASCRIPT原来的这个是一样的: window.onload=function(){ //执行函数}

    相当于 $(document).ready(function(){ } )

    或者: <body onload="XXX"> 也是一个意思。

    1 首先(function(){})()这种写法 是创建了一个匿名的方法并立即执行(function(){})这个是匿名方法后面的括号就是立即调用了这个方法)。
    这样做可以创建一个作用域以保证内部变量与外部变量不发生冲突,比如$ jQuery 等jquery内部定义的变量。

    2 (function($){})(jQuery) 这个写法主要的作用还是保证jquery不与其他类库或变量有冲突

    首先是要保证jQuery这个变量名与外部没有冲突(jquery内部$与jQuery是同一个东西 有两个名字的原因就是怕$与其他变量名有冲突二jQuery与其他变量冲突的几率非常小)并传入匿名对象,匿名对象给参数起名叫做$(其实和jquery内部是一样的) 然后你就可以自由的在(function($){})(jQuery)里写你的插件而不需要考虑与外界变量是否存在冲突,(是初始化jquery对象的惯用方法).

       

       没太搞明白,$是形参没什么作用,jquery是实参,传个jquery进去到底什么意思?

    附:

    编写插件的格式为:

    (function( $ ){

       $.fn.myPlugin = function() {

          // Do your awesome pluginstuff here

    };

    })( jQuery );

    注意: 一定要用(function( $ ){  //plugin goes here   })( jQuery); 包裹插件内容;

    为了更好的兼容性,开始前有个分号

    ;(function( $){ 

    //此处将$作为匿名函数的形参

      //这里放置代码,可以使用$作为jQuery的别名

    })( jQuery );//将jQuery作为实参传递给匿名函数

  • 相关阅读:
    尬聊攻略丨过年回家,你最怕被亲戚问什么?
    有人被盗刷900次? 支付宝发布年终“神反转”盘点
    470余万条疑似12306用户数据遭贩卖 嫌疑人被刑拘
    利用Python实现对Web服务器的目录探测
    栈空间溢出
    KB奇遇记(6):搞笑的ERP项目团队
    探寻不同版本号的SDK对iOS程序的影响
    阅读《Android 从入门到精通》(24)——切换图片
    leetcode
    Grunt的配置及使用(压缩合并js/css)
  • 原文地址:https://www.cnblogs.com/specification/p/3613980.html
Copyright © 2011-2022 走看看