jQuery.extend()、jQuery.fn.extend()擴(kuò)展方法示例詳解
來源:易賢網(wǎng) 閱讀:4223 次 日期:2014-05-09 14:54:59
溫馨提示:易賢網(wǎng)小編為您整理了“jQuery.extend()、jQuery.fn.extend()擴(kuò)展方法示例詳解”,方便廣大網(wǎng)友查閱!

jQuery自定義了jQuery.extend()和jQuery.fn.extend()方法.其中jQuery.extend()方法能夠創(chuàng)建全局函數(shù)或者選擇器,而jQuery.fn.extend()方法能夠創(chuàng)建jQuery對(duì)象方法.

例如:

代碼如下:

jQuery.extend({

showName : function(name){

alert(name)

}

});

jQuery.showName("深藍(lán)");

jQuery.extend()除了可以創(chuàng)建插件外,還可以用來擴(kuò)展jQuery對(duì)象.

例如:

代碼如下:

var a = {

name : "blue",

pass : 123

}

var b = {

name : "red",

pass : 456,

age : 1

}

var c = jQuery.extend({},a,b);

c擁有a,b對(duì)象的屬性,由于,b對(duì)象在a對(duì)象之后,其name屬性優(yōu)先在c對(duì)象里.

jQuery.extend()方法為插件傳遞系列選項(xiàng),包括默認(rèn)值.

代碼如下:

function fn(options){

var options = jQuery.extend({ //默認(rèn)參數(shù)選項(xiàng)列表

name1 : value1,

name2 : value2,

name3 : value3

},options); //使用函數(shù)的參數(shù)覆蓋或合并到默認(rèn)參數(shù)選項(xiàng)列表中

//函數(shù)體

}

fn({ name1 : value3, name2 : value2 , name3 : value1 });//使用新值

fn({ name4 : value3, name5 : value2 });//在默認(rèn)上添加新選項(xiàng)

fn(); //保持默認(rèn)選項(xiàng)值

當(dāng)在調(diào)用該方法時(shí),傳遞新的參數(shù)值,就會(huì)覆蓋掉默認(rèn)的參數(shù)選項(xiàng)值,否則,使用默認(rèn)參數(shù)值.

使用JQuery.fn對(duì)象創(chuàng)建JQuery對(duì)象方法

可以通過jQuery.fn對(duì)象來添加屬性和方法,實(shí)際上jQuery.fn對(duì)象就是掛接在jQuery.prototype上的,jQuery把它簡(jiǎn)寫了.

fn 是什么東西呢。查看jQuery代碼,就不難發(fā)現(xiàn)。

代碼如下:

jQuery.fn = jQuery.prototype = {

init: function( selector, context ) {//.... 

//......

};

原來 jQuery.fn = jQuery.prototype.對(duì)prototype肯定不會(huì)陌生啦。

例如:

代碼如下:

jQuery.fn.test = function(){

alert("這是jQuery對(duì)象方法!");

}

jQuery("div").click(function(){

$(this).test(); //在當(dāng)前的jQuery對(duì)象上調(diào)用test()方法

});

我們可以調(diào)用jQuery.fn.extend()方法來創(chuàng)建jQuery對(duì)象方法.

代碼如下:

jQuery.fn.extend({

test : function(){

return this.each(function(){

alert(this.nodeName)

});

}

});

jQuery("body *").click(function(){

$(this).test(); //調(diào)用jQuery對(duì)象方法

});

一句話:jQuery.extend是對(duì)JQuery類的自定義擴(kuò)展,jQuery.fn.extend是對(duì)JQuery對(duì)象的自定義擴(kuò)展.

更多信息請(qǐng)查看IT技術(shù)專欄

更多信息請(qǐng)查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機(jī)網(wǎng)站地址:jQuery.extend()、jQuery.fn.extend()擴(kuò)展方法示例詳解
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國(guó)考·省考課程試聽報(bào)名

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)