• 编写jQuery插件


      jQuery插件,其实就是通过jQuery的命名空间来调用的方法和函数。

      jQuery插件分为三种:

      1.通过对象来调用的插件 比如:var obj=$("#hello");obj.plg(); 通过jQuery.fun.extend()方法来拓展

      2.全局的插件,在jQuery的命名下调用的,比如:jQuery.trim() 通过jQuery.extend()方法来拓展,这个方法也用来设置默认参数

      3.选择器插件,拓展jQuery的选择器,比如:$(".a").color(red)选择红色的并且class为.a的元素 通过jQuery.extend()方法来拓展

      javascript中的闭包:

      描述:允许使用内部函数(函数的定义和函数表达式位于另一个函数体内),而且,这些内部函数可以访问它所在的

      外部函数所有的局部变量、参数和声明的其他内部函数,当其中一个这样的内部函数在包含它们的外部函数之外被调用时,

      就会形成闭包。比如:

    1
    2
    3
    4
    5
    6
    7
    8
    function a(){
        var x=1;
        var b=function(){
            y=x;
            return y;
        }
    }
    var c=b


      而jQuery插件就是利用了闭包的特性,既可以内部临时变量影响全局空间,又可以在插件的内部访问外部空间的变量,例如jQuery,$

      常见的插件形式为:

    1
    2
    3
    (function(){
    /*这里是实现代码*/
    })();

      也可以是是这样

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    ;(function($){
    var foo;//局部变量
    var bar=function(){
        /*
            匿名函数内部的函数都可以访问foo,即便在匿名函数的外部调用bar,也可以访问foo,但是在匿名函数外面
            直接访问foo是做不到的
        */
        $.BAR=bar;//让匿名函数的内部函数bar()逃逸到全局可访问空间,这样就可以通过jQuery.BAR()来访问内部函数bar()
    }
    })(jQuery);
     
  • 相关阅读:
    location.replace与location.href,location.reload的区别
    转载关于KeyPress和KeyDown事件的区别和联系
    Javascript中call的使用
    按值和按引用的比较
    理解cookie的path和domain属性
    HTML的快速写法:Emmet和Haml
    SVN标准命令
    linux常用命令
    Android4.0(Phone)拨号启动过程分析(一)
    Activity生命周期
  • 原文地址:https://www.cnblogs.com/jinhuixin/p/4186394.html
Copyright © 2020-2023  润新知