最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jQuery的$.proxy()應(yīng)用示例介紹

 更新時間:2014年04月03日 15:41:15   作者:  
這篇文章主要介紹了jQuery的$.proxy()應(yīng)用,需要的朋友可以參考下
今天在看<<鋒利的jQuery>>時看到了proxy()的使用,感覺很模糊,就到處找資料.

 

jQuery的源碼也沒看明白.

不過總算明白了proxy的用法了;
復(fù)制代碼 代碼如下:

<input type="button" value="測試" id="guoBtn" name="我是按鈕的name"/>

復(fù)制代碼 代碼如下:

var obj = {
name: "我是obj的name",
sayName: function () {
alert(this.name);
}
}
$("#guoBtn").click(obj.sayName); //我是按鈕的name
// 如果我想訪問obj的name怎么辦呢?
$("#guoBtn").click($.proxy(obj.sayName,obj));//"我是obj的name"
$("#guoBtn").click($.proxy(obj, "sayName")); //"我是obj的name"

從上面proxy(a,b)的用法可以看出他的參數(shù)有兩種寫法.

第一種:a是一個function函數(shù),b是這個函數(shù)的對象所有者.

第二種:a是一個對象,b是一個字符串,是a的屬性名.

還有這個實例就是<<鋒利的jQuery>>上的一個例子了.
復(fù)制代碼 代碼如下:

<div id="panel" style="display:none;">
<button>Close</button>
</div>

復(fù)制代碼 代碼如下:

$("#panel").fadeIn(function () {
$("#panel button").click(function () {
$(this).fadeOut();
});
});


button雖然消失了,但是panel卻沒有消失.可以使用proxy來解決這個問題.
復(fù)制代碼 代碼如下:

$("#panel").fadeIn(function () {
var obj = this;
$("#panel button").click($.proxy(function () {
$(this).fadeOut();
}, obj));
});

這樣單擊按鈕之后,panel才會消失.

個人感覺proxy最主要就是用來修改函數(shù)執(zhí)行時的上下文對象的.

是在apply的基礎(chǔ)上做的封裝,所以說proxy就是我們jQuery自己的apply.

相關(guān)文章

最新評論

蓝山县| 南丹县| 佳木斯市| 徐州市| 葫芦岛市| 平南县| 三门县| 金塔县| 绥化市| 义乌市| 自治县| 伊金霍洛旗| 松阳县| 辽阳市| 富阳市| 怀仁县| 柏乡县| 遵化市| 石景山区| 迭部县| 揭东县| 浦县| 逊克县| 阳曲县| 亚东县| 灌云县| 屯昌县| 山东| 恩施市| 滦平县| 丹凤县| 龙南县| 乐业县| 宁陕县| 常熟市| 华容县| 沾益县| 开原市| 平遥县| 肇州县| 南陵县|