基礎(chǔ)
$.extend()
擴(kuò)展JQuery靜態(tài)方法,$.fn.extend()
擴(kuò)展JQuery實(shí)例方法
靜態(tài)方法:
$.extend({
sayName:function() {
console.log("My name is JQuery");
}
});
$.sayName(); //"My name is JQuery"
實(shí)例方法:
$.fn.extend({
check: function() {
return this.each(function(){
this.checked=true;
});
}
});
$("input[type='checkbox']").check(); //所有checkbox都會(huì)被選擇
extend參數(shù)
**將src1,src2...srcN的每一項(xiàng)合并為dest,并返回合并后的對(duì)象。
extend(dest, src1, src2...srcN);
例子
var dest = {name:"job", age:20}, src1={name:"tom", live:"Beijing"};
$.extend(dest, src1);
console.log(dest); //{name: "tom", age: 20, live: "Beijing"}
這個(gè)方法寫插件的時(shí)候經(jīng)常使用
(function($){
$.fn.extend({
dralog: function(options) {
var default = {
width: 100,
height: 100
};
var style = $.extend({}, default, options);
console.log(style);
$("div").css(style);
}
});
})(jQuery);
$().dralog({
width: 200,
height: 200
});
當(dāng)extend只有一個(gè)參數(shù)時(shí)
將dest的每一項(xiàng)合并到j(luò)query全局對(duì)象中去。
extend(dest);
$.fn.extend(dest)
將dest的每一項(xiàng)合并到JQuery的實(shí)例中
$.fn.extend({name:'tom'});
extend的第一參數(shù)為boolean值得時(shí)候
Boolean為true時(shí)為深拷貝,為false時(shí)為淺拷貝
extend(Boolean, src1, src2...srcN);