jq 插件、改写函数、开辟函数空间

本文介绍如何使用jQuery.extend和$.fn来扩展jQuery的功能,包括创建命名空间、定义自定义方法及调用方式。通过实例展示了如何避免命名冲突并实现特定功能。

写jq的插件,主要以jq的原件为底,在其中添加函数,然后加以调用。用到的语法:

jQuery.extend({方法名:函数});
例:
 
jQuery.extend({
bar: function(param) {     
alert('This function takes a parameter, which is "' + param +'".');     
},
.
.
.
无限个函数
});  
 
外部用$.bar(xxxx);(jquery符号调用其方法名)。便可以使用其方法。
 
extend此处为命名空间,若要改写命名空间的话,需要把此处换为你要开辟的空间名称。例:$.test={....:function(){.....};
开辟了新的空间,就不可以使用全局变量来调用,只能用开辟空间的名称,调用里面的方法,例:$.test.test1(xxxxx);
例:
 
 
$.show= {
     letShow:function(){
          console.log('i can show!');
     },
     ttShow:function(showName){
          console.log('May you can '+showName+' show?');
     }
};
 
跟上篇配置论区别就是没有开辟为jq的对象,作用域基本相同。
 
如若以$.fn.方法名 = function(){};这种写法来写的话,则不会影响到空间名称相同而导致冲突。
 
例:
 
$.fn.hilight = function(options) {
  $(this).css($.extend({ 
          background: 'yellow'   
  }, options));
};


$('#myDiv').hilight({
  background: 'blue'
});
  
 
 
 
例:
 
$.fn.deplorNam = function(elementsNam){
     propertys = {};
     //属性名为键值对,以json的格式
     var alias = $.extend(propertys,elementsNam);
     this.each(function(){
           //主区
     });
}
 
调用方式:         $('....').deplorNam({ '相对应的key值' : '自己的值' });

转载于:https://www.cnblogs.com/piaerson/p/3559889.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值