jquery的$.extend和$.fn.extend作用及区别(—)
jQuery為開發(fā)插件提拱了兩個(gè)方法,分別是:
jQuery.fn.extend();
jQuery.extend();
雖然 javascript 沒(méi)有明確的類的概念,但是用類來(lái)理解它,會(huì)更方便。
jQuery便是一個(gè)封裝得非常好的類,比如我們用 語(yǔ)句 $("#btn1") 會(huì)生成一個(gè) jQuery類的實(shí)例。
jQuery.extend(object); 為jQuery類添加類方法,可以理解為添加靜態(tài)方法。如:
jQuery.extend({
min: function(a, b) { return a < b ? a : b; },
max: function(a, b) { return a > b ? a : b; }
});
jQuery.min(2,3); //??2?jQuery.max(4,5); //??5
ObjectjQuery.extend( target, object1,?[objectN])用一個(gè)或多個(gè)其他對(duì)象來(lái)擴(kuò)展一個(gè)對(duì)象,返回被擴(kuò)展的對(duì)象
var settings = { validate: false, limit: 5, name: "foo" };?
var options = { validate: true, name: "bar" };?
jQuery.extend(settings, options);
結(jié)果:settings == { validate: true, limit: 5, name: "bar" }
?
jQuery.fn.extend(object); 對(duì)jQuery.prototype進(jìn)得擴(kuò)展,就是為jQuery類添加“成員函數(shù)”。jQuery類的實(shí)例可以使用這個(gè)“成員函數(shù)”。
比如我們要開發(fā)一個(gè)插件,做一個(gè)特殊的編輯框,當(dāng)它被點(diǎn)擊時(shí),便alert 當(dāng)前編輯框里的內(nèi)容。可以這么做:
$.fn.extend({??????????
?????alertWhileClick:function() {????????????
???????????$(this).click(function(){?????????????????
??????????????????alert($(this).val());???????????
????????????});???????????
??????}???????
});???????
$("#input1").alertWhileClick();?// 頁(yè)面上為:????
$("#input1") 為一個(gè)jQuery實(shí)例,當(dāng)它調(diào)用成員方法 alertWhileClick后,便實(shí)現(xiàn)了擴(kuò)展,每次被點(diǎn)擊時(shí)它會(huì)先彈出目前編輯里的內(nèi)容。
轉(zhuǎn)載于:https://www.cnblogs.com/itkss/p/5087840.html
總結(jié)
以上是生活随笔為你收集整理的jquery的$.extend和$.fn.extend作用及区别(—)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: struts2综合例子--------拦
- 下一篇: JS中的事件冒泡——总结