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

写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值' : '自己的值' });
posted on 2014-02-21 17:29  Mr.piaerson  阅读(279)  评论(1)    收藏  举报