最近在研究jQuery。把jQuery.extend擴展函數的用法記錄下來。
1、擴展jQuery靜態方法.
1
$.extend(
{
2
test:
function
()
{alert(
'
test函數
'
)}
3
}
)
用法: $.test()
2、合并多個對象.
為jQuery.extend(css1,css2)為例,css1,css2個有一些屬性(法照樣會比處理,這里之講屬性).
extend函數會把css2有而css2沒有的屬性加到css1中,如果css2的某個屬性與css1的某個屬性名稱享用,就會用css2的屬性去覆蓋css1的同名屬性。css1就是最后的整和對象。或者也可以用 :
var newcss = jquery.extend(css1,css2)? newcss就是合并的新對象。
var newcss = jquery.extend({},css1,css2) newcss就是合并的新對象.而且沒有破壞css1的結構。
1
//
用法:?jQuery.extend(obj1,obj2,obj3,
..)
2
var
?Css1
=
{size:?
"
10px
"
,style:?
"
oblique
"
}
3
var
?Css2
=
{size:?
"
12px
"
,style:?
"
oblique
"
,weight:?
"
bolder
"
}
4
$.jQuery.extend(Css1,Css2)
5
//
結果:Css1的size屬性被覆蓋,而且繼承了Css2的weight屬性
6
//
?Css1?=?{size:?"12px",style:?"oblique",weight:?"bolder"}
7
3。深度鑲套對象
新的
extend
()允許你更深度的合并鑲套對象。下面的例子是一個很好的證明。
?1
//
?以前的?.extend()???
?2
???jQuery.extend(???
?3
?????
{?name:?“John”,?location:?
{?city:?“Boston”?}
?}
,???
?4
?????
{?last:?“Resig”,?location:?
{?state:?“MA”?}
?}
???
?5
???);???
?6
????
//
?結果:???
?7
????
//
?=>?{?name:?“John”,?last:?“Resig”,?location:?{?state:?“MA”?}?}
?8
??
//
?新的更深入的?.extend()???
?9
???jQuery.extend(?
true
,???
10
???
{?name:?“John”,?location:?
{?city:?“Boston”?}
?}
,???
11
?????
{?last:?“Resig”,?location:?
{?state:?“MA”?}
?}
???
12
??);???
13
??
//
?結果???
14
???
//
?=>?{?name:?“John”,?last:?“Resig”,???
15
??
//
??????location:?{?city:?“Boston”,?state:?“MA”?}?}??
16
17
???
(轉載地址: http://www.cnblogs.com/luckboy/archive/2009/06/25/1510870.html )
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
