jQuery使用工具函數

來源:互聯網
上載者:User

標籤:針對   開發人員   容器   jquer   格式   相關   ges   選項   url   

1. 什麼是工具函數

在jQuery中,工具函數是指直接依附於jQuery對象、針對jquery對象本身定義的說法,即全域性的函數,我們統稱為工具函數,或Utilities函數。它們有一個明顯的特徵,一般情況下,採用如下的格式進行調用:

$.函數名()或jquery.函數()

2.工具函數的分類

根據工具函數處理對象的不同,可以將其分為下列幾大類別:瀏覽器的檢測、數組和對象的操作、字串操作、測試操作、URL操作。

1)瀏覽器的檢測

在瀏覽器檢測中,又可分為瀏覽器類型與特徵的檢測,前者擷取瀏覽器的名稱或版本資訊,後者檢測瀏覽器時候支援標準的W3C盒子模型。

 

瀏覽器名稱或版本資訊

雖然jquery有很好的瀏覽器安全色性,但有時程式開發人員需要擷取瀏覽器的相關資訊,用於提供使用者或程式,在jquery中,可以通過訪問$.browser對象的屬性擷取。$.browser對象即jQuery.browser對象,用於處理與瀏覽器相關的事務,該對象的屬性如下:

 

 

 

盒子模型

盒子模型是CSS中的專屬名詞,用以描述版面設定中的各種屬性

W3C盒子 模型的width和height不包含padding和border

IE盒子 模型width和height包含padding和border

 

 

$.support.boxModel 屬性  為true 為W3C盒子模型,否則為IE盒子模型

數組和對象的操作

1)遍曆數組

使用$.each()工具函數,不僅可以實現頁面中元素的遍曆,還可以完成指定數組的遍曆,其調用的文法格式如下:

  $.each(obj,fn(para1,para2))

其中參數obj,表示要遍曆的數組或對象,fn為每個遍曆元素執行的回呼函數,該函數包含兩個參數,para1表示數組的序號或對象的屬性,para2表示數組的元素和對象的屬性。

 2)遍曆對象

$.each()函數除了遍曆數組外,還可以遍曆對象,擷取對象的屬性和值。

3)資料篩選

在運算元組時,有時需要根據各種條件式篩選元素,傳統的JavaScript代碼將遍曆整個數組,在遍曆中設定篩選規則的元素。而在jQuery中使用grep(),格式如下:

$.grep(array,function(elementOfArray,indexInArray),[invert])

其中,參數array為要篩選的原數組,回呼函數fn中可以設定兩個參數,其中elementOfArray為數組中的元素,indexInArray為元素在數組中的序號;另外,可選項[invert]為布爾值,表示是否根據fn的規則取反向結果,預設值為false,表示不取反,如果為true,表示取反,即返回與回呼函數fn規則相反的資料。

條件  卸載 fn的return中,例如:ele >5 &&  index <8

4) 資料變更

按指定條件修改數組中的所選元素,

$.map(array,fn(eleArr,indexArr))

其中,參數array為要變更的原數組,回呼函數fn中可以設定兩個參數,其中eleArr為數組中的元素,indexArr為元素在數組中的序號。

5) 資料搜尋

在jQuery中,如果要在數組中搜尋某個元素,可以使用工具函數$.inArray(),該方法相當於用JavaScript中的indexOf()搜尋字串中的某個字元。在工具函數$.inArray()中,如果找到了指定的某個元素,則返回該元素在數組中的索引號,否則,返回-1值。其調用格式如下:

$.inArray(value,array)

其中,參數value表示要搜尋的對象,array表示搜尋對象的數組。

 

字串操作

如果要除掉字元中左右兩邊的空格符,可以使用工具函數$.trim()。

$.trim(str)

 

測試操作

 

原始對象:即對象是否通過{}或 new Object()關鍵字建立

 

$.contains()函數

$.contains()函數用於檢測在一個DOM節點中是否包含另外一個DOM節點,其文法如下:

$.contains(container,contained)

其中:參數container為Object,是一個DOM元素,作為容器,可以包含其他DOM元素;參數contained也是一個DOM是一個節點,可能被其他元素包含。整個函數返回一個布爾值,如果包含返回true,否則返回false。

URL操作

 

$.param(obj,[traditional])

其中:參數obj表示需要進行序列化的對象,該對象可以是數組、jQuery元素、普通對象;可選項參數[traditional],表示是否使用普通話的方式淺層序列化,該函數返回一個序列化,該函數返回一個序列化後的字串。

$.extend()擴充工具函數

$.proxy()函數 改變綁定事件的範圍

 

jQuery使用工具函數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.