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

首頁 > 語言 > JavaScript > 正文

如何編寫jquery插件

2024-05-06 15:19:10
字體:
來源:轉載
供稿:網友

前面的話

編寫插件的目的是給已經有的一系列方法或函數做一個封裝,以便在其他地方重復使用,提高開發效率和方便后期維護。本文將詳細介紹如何編寫jQuery插件

類型

jQuery的插件主要分為3種類型

1、封裝對象方法

這種插件是將對象方法封裝起來,用于對通過選擇器獲取的jQuery對象進行操作,是最常見的一種插件。此類插件可以發揮出jQuery選擇器的強大優勢,有相當一部分的jQuery的方法,都是在jQuery腳本庫內部通過這種形式“插”在內核上的,例如:parent()方法、appendTo()方法等。這些方法在現在來看都是jQuery本身自帶的方法了。平時,我們是可以直接拿來就用的,只需引入jQuery庫就行

2、封裝全局函數

可以將獨立的函數加到jQuery命名空間下,如常用的jQuery.ajax()、去首尾空格的jQuery.trim()方法等,都是jQuery內部作為全局函數的插件附加到內核上去的

3、選擇器插件

雖然jQuery的選擇器十分強大,但是在少數情況下,還是會需要用到選擇器插件來擴充一些自己喜歡的選擇器

要點

1、jQuery插件的文件名推薦命名為jQuery.[插件名].js,以免和其他JS庫插件混淆

2、所有的對象方法都應當附加到jQuery.fn對象上,而所有的全局函數都應當附加到jQuery對象本身上

3、在插件內部的this指向的是當前通過選擇器獲取的jQuery對象,而不像一般方法那樣,如click,內部的this指向的是DOM元素

4、可以通過this.each來遍歷所有的元素

5、所有的方法或函數插件,都應當以分號結尾。否則壓縮的時候可能出現問題。為了穩妥些,甚至可以在插件頭部先加上一個分號,以免他人不規范的代碼影響自身的插件代碼

6、插件應該返回一個jQuery對象,以保證插件的可鏈式操作

7、避免在插件內部使用$作為jQuery對象的別名,而應使用完整的jQuery來表示,避免沖突。當然,也可以利用閉包來回避這種問題,使插件內部繼續使用$作為jQuery的別名

閉包

利用閉包的特性,即可以避免內部臨時變量影響全局空間,又可以在插件內容繼續使用$作為jQuery的別名。常見的jQuery插件都是以下這種形式的:

(function(){  /*這里放置代碼*/ })();

首先定義一個匿名函數function(){/*這里放置代碼*/},然后用括號括起來,變成(function(){/*這里放置代碼*/})這種形式,最后通過()這個運算符來執行。可以傳遞參數進行,以供內部函數使用

//為了更好的兼容性,開始前有個分號;(function($){    //此處將$作為匿名函數的形參  /*這里放置代碼,可以使用$作為jQuery的縮寫別名*/})(jQuery);      //這里就將jQuery作為實參傳遞給匿名函數了            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 航空| 象州县| 麟游县| 开远市| 甘肃省| 色达县| 安达市| 南投县| 江北区| 台中县| 英吉沙县| 晋城| 抚顺县| 达拉特旗| 曲周县| 株洲市| 扶沟县| 东山县| 藁城市| 泸溪县| 齐齐哈尔市| 辛集市| 叶城县| 保靖县| 湖南省| 靖远县| 湘乡市| 石台县| 南和县| 敖汉旗| 东光县| 弥渡县| 阳泉市| 垫江县| 兰考县| 沙河市| 邮箱| 鄂州市| 黎平县| 东乌| 宣化县|