<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • jQuery插件制作之全局函數(shù)使用方法

    時(shí)間:2024-11-05 18:34:54 jQuery 我要投稿
    • 相關(guān)推薦

    jQuery插件制作之全局函數(shù)使用方法

      1、添加新的全局函數(shù)

      所謂的全局函數(shù),實(shí)際上就是jQuery對(duì)象的方法,但從實(shí)踐的角度上看,他們是位于jQuery命名空間內(nèi)部的函數(shù)

      (1)添加一個(gè)函數(shù),只需要將新函數(shù)指定為jQuery對(duì)象的一個(gè)屬性。

      jQuery.five =function(){ alert("直接繼承方式不一樣"); }

      調(diào)用:復(fù)制代碼 代碼如下:$.five();

      (2)添加多個(gè)函數(shù)

      jQuery.five =function(){ alert("直接繼承方式不一樣"); } jQuery.six =function(){ alert("直接繼承方式不一樣2"); }

      調(diào)用:復(fù)制代碼 代碼如下:$.five();$.six();

      以上的方法會(huì)面臨命名空間沖突的風(fēng)險(xiǎn),為避免這個(gè)問(wèn)題,最好把屬于這個(gè)插件的所有全局函數(shù),都封裝到一個(gè)對(duì)象中,如下:

      //命名空間繼承 jQuery.myPlugin ={ one : function(obj){ var object = obj; var id = object.attr("id"); alert(id); }, two : function(){ alert(22); } }

      這樣其實(shí)是為全局函數(shù)創(chuàng)建了另一個(gè)命名空間:jQuery.myPlugin.

      2、添加jQuery對(duì)象方法

      jQuery中大多數(shù)內(nèi)置的功能都是通過(guò)其對(duì)象的方法提供的。

      jQuery.fn.myMethod= function(){ alert(11); }

      調(diào)用:復(fù)制代碼 代碼如下:$.fn.myMethod();

      注意:jQuery.fn是jQuery.prototype的別名。

      實(shí)例:以下是行為不正確的方法

      11111111111111111111111111

      22222222222222222222

      333333333333333

      4444444444444444455555555555555

      6666666666666666

      777777777777777777

      777777777777777777

      jQuery.fn.swapClass= function(class1,class2){ if(this.hasClass(class1)){ this.removeClass(class1).addClass(class2); } if(this.hasClass(class2)){ this.removeClass(class2).addClass(class1); } } $("#swap").click(function(){ $("li").swapClass("this","that"); return false; })

      全部li都是用了that樣式。

      (1)隱士迭代

      要在無(wú)論匹配多個(gè)元素的情況下都保證行為的正確,最簡(jiǎn)單的方法是始終在方法的環(huán)境上調(diào)用.each()方法,這樣就會(huì)

      執(zhí)行隱士迭代,而執(zhí)行隱士迭代對(duì)于維護(hù)插件和內(nèi)置方法的一致性是至關(guān)重要的,在調(diào)用的.each()方法內(nèi)部,this

      依次引用的是每個(gè)DOM元素.以上代碼修改為:

      jQuery.fn.swapClass= function(class1,class2){ this.each(function(){ var $element = jQuery(this); if($element.hasClass(class1)){ $element.removeClass(class1).addClass(class2); }else if($element.hasClass(class2)){ $element.removeClass(class2).addClass(class1); } }) }

      調(diào)用:

      復(fù)制代碼 代碼如下:$("li").swapClass("this","that")

      (2)方法的連綴

      要使用方法的連綴,必須在所有的插件方法中返回一個(gè)jQuery對(duì)象。返回的jQuery對(duì)象通常就是this所引用的對(duì)象。

      jQuery.fn.swapClass= function(class1,class2){ return this.each(function(){ var $element = jQuery(this); if($element.hasClass(class1)){ $element.removeClass(class1).addClass(class2); }else if($element.hasClass(class2)){ $element.removeClass(class2).addClass(class1); } }) }

      調(diào)用:

      復(fù)制代碼 代碼如下:$("li").swapClass("this","that").css("text-decoration","underline");

      3、添加新的簡(jiǎn)寫(xiě)方法

      //添加新的簡(jiǎn)寫(xiě)方法 jQuery.fn.slideFadeOut= function(speed,callback){ return this.animate({ height : "hide", opacity : "hide" },speed,callback) } jQuery.fn.slideFadeIn= function(speed,callback){ return this.animate({ height : "show", opacity : "show" },speed,callback) } jQuery.fn.slideFadeToggle= function(speed,callback){ return this.animate({ height : "toggle", opacity : "toggle" },speed,callback) }

    【jQuery插件制作之全局函數(shù)使用方法】相關(guān)文章:

    淺析jQuery 遍歷函數(shù)javascript08-06

    jQuery 源碼分析和Ready函數(shù)06-28

    excel中if函數(shù)的使用方法10-24

    excel常用函數(shù)使用方法04-26

    asp.net+jquery Jsonp使用方法介紹08-23

    vlookup函數(shù)在Excel中的使用方法09-21

    Excel中vlookup函數(shù)使用方法02-17

    excel中now函數(shù)的使用方法05-25

    excel四舍五入函數(shù)使用方法06-11

    jquery之超簡(jiǎn)單的div顯示和隱藏特效demo簡(jiǎn)介05-15

    主站蜘蛛池模板: 久久精品三级视频| 亚洲精品无码Av人在线观看国产 | 国产精品麻豆入口| 国产精品无码无片在线观看| 永久免费精品影视网站| 欧美国产成人精品一区二区三区 | 久久精品亚洲精品国产色婷| 青青草原精品国产亚洲av| 久久精品中文字幕无码绿巨人| 久久亚洲精品成人av无码网站| 99精品一区二区三区无码吞精| 欧美精品手机在线播放| 国产伦精品一区二区三区视频金莲| 久久夜色精品国产| 中文字幕精品亚洲无线码二区 | 国产精品视频色视频| 久久久久亚洲精品天堂久久久久久| 日本午夜精品理论片A级APP发布| 亚洲精品国精品久久99热一| 国产精品一区二区久久| 国内精品久久久久久久coent| 亚洲欧洲久久久精品| 国产精品丝袜一区二区三区| 女人香蕉久久**毛片精品| 国产精品亚洲精品日韩已方 | 亚洲无删减国产精品一区| 久久精品国产精品亚洲人人 | 97r久久精品国产99国产精| 国产成人精品一区在线| 亚洲国产精品毛片av不卡在线| 国产亚洲欧美精品久久久| 亚洲国产精品自在线一区二区| 亚洲国产精品毛片av不卡在线| 丰满人妻熟妇乱又仑精品| 精品久久久久久久久久中文字幕| 亚洲Av无码精品色午夜| 亚洲无删减国产精品一区| 亚洲精品乱码久久久久久蜜桃不卡| 老司机69精品成免费视频| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 久久精品中文騷妇女内射|