• 编写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);
     
  • 相关阅读:
    由一个表更新另一个表中field
    DevExpress控件XtraGrid显示问题,分组不好用
    20090522: IBM X22
    DevExpress的GridControl选择一行,不显示单元格焦点的设置
    DataTable添加行的方法
    DevExpress自定义XtraGrid列菜单
    一道面试题
    DevExpress 设置LookUpEdit的值
    解决端口占用问题
    NoSQL
  • 原文地址:https://www.cnblogs.com/jinhuixin/p/4186394.html
Copyright © 2020-2023  润新知