[前端] $.fn.extend() 与 $.extend 示例

jQuery开发插件的两种方法:


$.fn.extend(object); 为扩展jQuery类本身,为类添加新的方法
$.extend(obj); 给jQuery对象添加方法

 

测试$.extend()

// $.extend() 示例一
            $.extend({
                e: 14,
                f: 15,
                add: function(a, b) {
                    return a + b;
                },
                minus: function(c, d) {
                    // alert(c - d);
                    alert(this.f - this.e);   // this指对象本身
                }
            });
            alert($.add(3, 4));
            // $.minus(12, 50);
            $.minus();
           

 

 

 

测试$.fn.extend()

 

// $.fn.extend() 示例
            $.fn.extend({
                popText: function() {
                    alert($(this).text());
                }
            });
            $('p').popText();
 

 

 

在$.fn.extend() 内加入$.extent() 来合并配置,在做jquery插件的时候,使用的比较多

 

// 综合示例
            $.fn.extend({
                popHtml: function(options) {
                    var defaults = {
                        name: '张三',
                        say: function() {
                            alert(this.name);
                        }
                    }
                    var opts = $.extend({}, defaults, options);  // 用一个或多个其他对象来扩展一个对象,返回被扩展的对象。$.extend(deep, target, obj1, obj2, objn); deep为true表示递归合并
                    opts.say();
                }
            });
            // $('p').popHtml();   打印出 张三
            /*$('p').popHtml({     打印出 李四
                name: '李四'
            });*/

            $('p').popHtml({       // 打印出 hello 张三
                say: function() {
                    alert('hello ' + this.name);
                }
            });

 

欢迎关注技术开发分享录:http://fenxianglu.cn/

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天空还下着雪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值