国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

jquery $.fn $.fx是什么意思有什么用

2019-11-20 21:47:32
字體:
供稿:網(wǎng)友
$.fn是指jquery的命名空間,加上fn上的方法及屬性,會(huì)對(duì)jquery實(shí)例每一個(gè)有效。
如擴(kuò)展$.fn.abc()
那么你可以這樣子:$("#div").abc();
通常使用extend方法擴(kuò)展,詳細(xì)請(qǐng)看API.
$.fx是指jquery的特效。
如果使用顯示、滑動(dòng)、淡入淡出、動(dòng)畫等。
$.fx.off可以關(guān)閉動(dòng)畫,其實(shí)是直接顯示結(jié)果。

jquery的extend和fn.extend

jQuery為開發(fā)插件提拱了兩個(gè)方法,分別是:
jQuery.fn.extend(object);
jQuery.extend(object);
jQuery.extend(object); 為擴(kuò)展jQuery類本身.為類添加新的方法。
jQuery.fn.extend(object);給jQuery對(duì)象添加方法。

fn 是什么東西呢。查看jQuery代碼,就不難發(fā)現(xiàn)。
jQuery.fn = jQuery.prototype = {
   init: function( selector, context ) {//.... 
   //......
};
原來 jQuery.fn = jQuery.prototype.對(duì)prototype肯定不會(huì)陌生啦。
雖然 javascript 沒有明確的類的概念,但是用類來理解它,會(huì)更方便。
jQuery便是一個(gè)封裝得非常好的類,比如我們用 語句 $("#btn1") 會(huì)生成一個(gè) jQuery類的實(shí)例。

jQuery.extend(object); 為jQuery類添加添加類方法,可以理解為添加靜態(tài)方法。如:
$.extend({
  add:function(a,b){return a+b;}
});
便為 jQuery 添加一個(gè)為 add 的 “靜態(tài)方法”,之后便可以在引入 jQuery 的地方,使用這個(gè)方法了,
$.add(3,4); //return 7
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)容。可以這么做:

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

$.fn.extend({
alertWhileClick:function(){
$(this).click(function(){
alert($(this).val());
});
}
});
$("#input1").alertWhileClick();

頁(yè)面上為:<input id="input1" type="text"/>
$("#input1") 為一個(gè)jQuery實(shí)例,當(dāng)它調(diào)用成員方法 alertWhileClick后,便實(shí)現(xiàn)了擴(kuò)展,每次被點(diǎn)擊時(shí)它會(huì)先彈出目前編輯里的內(nèi)容。
真實(shí)的開發(fā)過程中,當(dāng)然不會(huì)做這么小白的插件,事實(shí)上jQuery提拱了豐富的操作文檔,事件,CSS ,Ajax、效果的方法,結(jié)合這些方法,便可以開發(fā)出更加 Niubility 的插件。

jquery(function(){})與(function(){}(jQuery)的區(qū)別
1.
jQuery(function(){});
全寫為
jQuery(docunemt).ready(function(){
});
意義為在DOM加載完畢后執(zhí)行ready()方法
2.
(funtion(){
}(jQuery);
實(shí)際執(zhí)行()(para)匿名方法,只不過傳遞了jQuery對(duì)象。

總結(jié):jQuery(funtion(){});用于存放DOM對(duì)象的代碼,執(zhí)行其中代碼時(shí)DOM對(duì)象已經(jīng)存在。不可用于存放開發(fā)插件代碼。因?yàn)閖Query對(duì)象沒有得到傳遞,外部通過jQuery.methodye調(diào)用不來其中方法。
(funtion(){
}(jQuery);
用于存放開發(fā)插件的代碼,執(zhí)行其中代碼DOM不一定存在,直接自動(dòng)執(zhí)行DOM操作代碼請(qǐng)小心使用
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 井研县| 略阳县| 武鸣县| 清流县| 井陉县| 高邑县| 南充市| 昌江| 长宁县| 邳州市| 扎囊县| 龙口市| 依安县| 黄浦区| 晋城| 抚州市| 双牌县| 达州市| 扬州市| 三河市| 岳普湖县| 双江| 张家港市| 高台县| 道孚县| 南通市| 额尔古纳市| 高尔夫| 锡林郭勒盟| 阿拉善左旗| 巴东县| 吴堡县| 梅州市| 清河县| 康平县| 靖边县| 特克斯县| 城口县| 黔南| 青州市| 湖州市|