jQuery使用记录

1. $.fn.method()=function(){}$.fn.extend({})

jQuery.fn === jQuery.prototype,把方法扩展到了对象的prototype上,所以实例化一个jQuery对象的时候,它就具有了这些方法

// 扩展方法
$.fn.dataStatistics = function(options){
    
    
  options = $.extend({
    
    
  min : 1000, 
  times: 3000,
  len:9
  },options || {
    
    });
  var ths = this;//解决this指向问题
}

// 将方法扩展到.dataStatistics元素
 $(".dataStatistics").dataStatistics({
    
    
        min: rate4g,
        time: 1000,
        len: 6
 });

$.fn.extend({}) 是对$.fn.method()=function(){}的扩展,它可以定义多个方法:

$.fn.extend({
    
    
    a: function() {
    
     },
    b: function() {
    
     }
});

等同于

$.fn.a = function() {
    
     };
$.fn.b = function() {
    
     };

2. $.extend()

将两个或更多对象的内容合并到第一个对象,对于同一个属性,后面对象的该属性值的覆盖前面对象的该属性值
$.extend( target [, object1 ] [, objectN ] )
$.extend( [deep ], target, object1 [, objectN ] )

  • deep:可选,默认false,为true时表示深度合并对象
  • target:目标对象,其他对象的成员属性将被附加到该对象上
  • object1:可选,被合并的对象
// 将传入的options参数对象与默认的参数对象合并
options = $.extend({
    
    
  min : 1000, 
  times: 3000,
  len:9 
  },options || {
    
    });

为jQuery类添加方法:如果只有一个参数,意味着目标参数被省略,jQuery对象本身被默认为目标对象。

$.extend({
    
    
    a: function() {
    
     },
    b: function() {
    
     }
})

猜你喜欢

转载自blog.csdn.net/lorogy/article/details/106993438