含义
jQuery.extend() 函数用于将一个或多个对象的内容合并到目标对象。
jQuery.extend( target, object1, [objectN])
注意:
- 如果只为$.extend()指定了一个参数,则意味着参数target被省略。此时,target就是jQuery对象本身。通过这种方式,我们可以为全局对象jQuery添加新的函数。
- 如果多个对象具有相同的属性,则后者会覆盖前者的属性值。
var settings = { validate: false, limit: 5, name: "foo" };
var options = { validate: true, name: "bar" };
jQuery.extend(settings, options);
//结果:settings == { validate: true, limit: 5, name: "bar" }
对象方法
jQuery.fn.extend = jQuery.prototype.extend
对jQuery.prototype的扩展,就是为jQuery类添加“成员函数”。jQuery类的实例可以使用这个“成员函数”。
$.fn.extend({
alertWhileClick:function()
{
$(this).click(function(){
alert($(this).val());
});
}
});
$("#input1").alertWhileClick();
类方法
jQuery.extend=$.extend
类方法与静态方法使用
<script type="text/javascript">
function jQuery() {
}
//两者合二为一---声明
jQuery.extend = jQuery.prototype.extend = function(obj) {
for(var key in obj) {
this[key] = obj[key];
}
}
//方式1:静态方法
jQuery.extend({
isTest: function() {
console.log(this, 'test1');
}
})
jQuery.isTest();
//方式2:实例方法
var q = new jQuery();
q.extend({
isTest: function() {
console.log(this,'test2')
}
})
q.isTest();
console.log()
</script>