<script type="text/JavaScript">
    
        //jQuery插件的写法(需要传入操作对象)
        ;(function($)
        {
            //PI_TestPlugIn为插件名称,也是插件的操作对象
            //为了不会与其它插件名重复,这里我使用PlugIn的缩写PI_来定义插件对象前缀
            $.fn.PI_TestPlugIn=   
            {
                //该插件的基本信息
                Info:{
                    Name: "TestPlugIn",
                    Ver: "1.0.0.0",
                    Corp: "Lzhdim",
                    Author: "lzhdim",
                    Date: "2010-01-01 08:00:00",
                    Copyright: "Copyright @ 2000-2010 Lzhdim Technology Software All Rights Reserved",
                    License: "GPL"
                },
                //具有参数的函数对象,这里参数是一个对象,具有属性
                FunctionWithParams:function(paramObj)
                {
                    //使用参数,是否使用默认值
                    var params = paramObj ? paramObj : new function(){
                                                           param1= "1";
                                                           param2= "2";
                                                       };
                    
                                                   
                    return this.Info.Name + ".FunctionWithParamObject";
                },
                //具有参数的函数对象,这里参数是一个变量
                FunctionWithParam:function(varparam)
                {
                    //使用参数,是否使用默认值
                    var param = varparam ? varparam : null;
                                                   
                                                   
                    return this.Info.Name + ".FunctionWithParam";
                },
                //不具有参数的函数对象
                FunctionWithOutParam:function()
                {
                    return  this.Info.Name + ".FunctionWithOutParam";
                }
            };
        })(jQuery);
        
        
        //jQuery拓展函数的写法(不需要传入操作对象),即API函数
        ;(function($)
        {
            $.extend({
                //PIF_TestExtendFunction为拓展函数的操作对象
                //为了不会与其它插件名重复,这里我使用PlugIn的缩写PI_来定义插件对象前缀
                PIF_TestExtendFunction:
                {
                    //该拓展函数的基本信息
                    Info:{
                        Name: "TestExtendFunction",
                        Ver: "1.0.0.0",
                        Corp: "Lzhdim",
                        Author: "lzhdim",
                        Date: "2010-01-01 08:00:00",
                        Copyright: "Copyright @ 2000-2010 Lzhdim Technology Software All Rights Reserved",
                        License: "GPL"
                    },
                    //具有参数的函数对象
                    FunctionWithParams:function(paramObj)
                    {
                        //使用参数,是否使用默认值
                        var params = paramObj ? paramObj : {
                                                           param1: "1",
                                                           param2: "2"
                                                       };
                                                   
                                                   
                        return this.Info.Name + ".FunctionWithParamObect";
                    },
                    //具有参数的函数对象,这里参数是一个变量
                    FunctionWithParam: function (varparam) {
                        //使用参数,是否使用默认值
                        var param = varparam ? varparam : null;

return this.Info.Name + ".FunctionWithParam";
                    },
                    //不具有参数的函数对象
                    FunctionWithOutParam:function()
                    {
                        return this.Info.Name + ".FunctionWithOutParam";
                    }
                }
            });
        })(jQuery);

$(function () 
        {
            //测试插件
            var params = 
            {
                param1: "3",
                param2: "4"
            };
            
            alert($(this).PI_TestPlugIn.FunctionWithParams(params));

alert($.PIF_TestExtendFunction.FunctionWithOutParam());
        });
        
        
    </script>

jQuery扩展插件和拓展函数的写法的更多相关文章

  1. jQuery扩展插件以及正则相关函数练习

    一.jQuery扩展插件 二.相关正则函数:

  2. jQuery编写插件--封装全局函数的插件(一些常用的js验证表达式)

    上一篇写到了jQuery插件的3种类型,介绍了第一种类型的写法--封装jQuery对象的方法插件.这一篇要介绍第二种插件类型:封装全局函数的插件:这类插件就是在jQuery命名空间内部添加函数:这类插 ...

  3. jQuery扩展插件

    jQuery有多好用,大家有目共睹的,但是有时候不是每个功能都是万能的,有时候我们需要实现自己的功能,jQuery提供了很好的拓展功能,我们可以去拓展插件,更好的利用jQuery 查看官网,可知,有两 ...

  4. Angular TypeScript开发环境集成jQuery扩展插件

    集成步骤: 1.安装jquery极其扩展插件库ts定义文件 npm install jquery --save npm install --save-dev @types/jquery npm ins ...

  5. jquery 扩展插件方法

    分析插件jquery.countdown.js (function($) { $.fn.countdown = function(options) { // default options var d ...

  6. JQuery扩展插件Validate—5添加自定义验证方法

    从前面的示例中不难看出validate中自带的验证方法足以满足一般的要求,对于特别的要求可以使用addMethod(name,method,message)添加自定义的验证规则,下面的示例中添加了一个 ...

  7. jquery扩展插件,让demo元素也可以resize

    (function($, h, c) { var a = $([]), e = $.resize = $.extend($.resize, {}), i, k = "setTimeout&q ...

  8. jquery编写插件的方法

     版权声明:作者原创,转载请注明出处! 编写插件的两种方式: 1.类级别开发插件(1%) 2.对象级别开发(99%) 类级别的静态开发就是给jquery添加静态方法,三种方式 1.添加新的全局函数 2 ...

  9. 再谈:jquery编写插件的方法

    版权声明:作者原创,转载请注明出处! 编写插件的两种方式: 1.类级别开发插件(1%) 2.对象级别开发(99%) 类级别的静态开发就是给jquery添加静态方法,三种方式 1.添加新的全局函数 2. ...

随机推荐

  1. js中RHS与LHS区别

    为什么区分RHS与LHS是一件重要的事情? 因为在变量没有声明(在任何作用域都找不到该变量的情况下),这两种查询的行为是不一样的. function foo (a) { console.log(a + ...

  2. android基础小结

    (注:此小结文档在全屏模式下观看效果最佳) 2016年3月1日,正式开始了我的android学习之路. 最最开始的,当然是学习怎样搭载环境了,然而苦逼的我在win10各种坑爹的指引下还是安装了一个星期 ...

  3. YTU 3002: 出栈顺序(栈和队列)

    3002: 出栈顺序(栈和队列) 时间限制: 1 Sec  内存限制: 128 MB 提交: 80  解决: 20 题目描述 给出一个入栈序列,和一个出栈序列,判断该出栈序列是否正确. 输入 输入包含 ...

  4. 如何生成excel文件作为图像识别结果

    如何生成excel文件作为图像识别结果 在进行大规模图像处理的时候,如果能够以表格的形式生成结果文件,将非常的直观.这个时候,选择excel作为结果输出文件,将是合适的. 查询相关资料,有很多关于ex ...

  5. oneThink安装出错解决

    在Wampserver3.0.0(apache2.4.17+php5.6.15+mysql5.7.9)版本中oneThink安装用1.1github版,不要用1.1开发版,不然安装的时候数据库导入时b ...

  6. 探索Win32系统之窗口类(转载)

    Window Classes in Win32 摘要 本文主要介绍win32系统里窗口类的运做和使用机制,探索一些细节问题,使win32窗口类的信息更加明朗化. 在本文中,"类", ...

  7. SqlSever基础 union 与 union all的区别,即 重复项是否全部显示

    镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...

  8. BZOJ 2566 xmastree(树分治+multiset)

    题目链接:http://www.lydsy.com:808/JudgeOnline/problem.php?id=2566 题意:一棵有边权的树.结点有颜色.每次修改一个点的颜色.求每次修改后所有同色 ...

  9. eclipse启动报错eclipse failed to create the java virutal machine

    早上一来,我的eclipse就无法启动了,错误就是这句话: eclipse failed to create the java virutal machine 直译就是eclipse无法创建JAVA虚 ...

  10. [CF733D]Kostya the Sculptor(贪心)

    题目链接:http://codeforces.com/contest/733/problem/D 题意:给n个长方体,允许最多两个拼在一起,拼接的面必须长宽相等.问想获得最大的内切圆的长方体序号是多少 ...