jQuery 雜項(xiàng)方法
方法 |
描述 |
---|---|
data() |
向被選元素附加數(shù)據(jù),或者從被選元素獲取數(shù)據(jù) |
each() |
為每個(gè)匹配元素執(zhí)行函數(shù) |
get() |
獲取由選擇器指定的 DOM 元素 |
index() |
從匹配元素中搜索給定元素 |
$.noConflict() |
釋放變量 $ 的 jQuery 控制權(quán) |
$.param() |
創(chuàng)建數(shù)組或?qū)ο蟮男蛄谢硎拘问?可在生成 AJAX 請(qǐng)求時(shí)用于 URL 查詢字符串中) |
removeData() |
移除之前存放的數(shù)據(jù) |
size() |
在版本 1.8 中被廢棄。返回被 jQuery 選擇器匹配的 DOM 元素的數(shù)量 |
toArray() |
以數(shù)組的形式檢索所有包含在 jQuery 集合中的所有 DOM 元素 |
pushStack() |
將一個(gè)DOM元素集合加入到j(luò)Query棧 |
$.when() |
提供一種方法來(lái)執(zhí)行一個(gè)或多個(gè)對(duì)象的回調(diào)函數(shù) |
jQuery 實(shí)用工具
方法 |
描述 |
---|---|
$.boxModel |
在版本 1.8 中被廢棄。檢測(cè)瀏覽器是否使用W3C的CSS盒模型渲染當(dāng)前頁(yè)面 |
$.browser |
在版本 1.9 中被廢棄。返回用戶當(dāng)前使用的瀏覽器的相關(guān)信息 |
$.contains() |
判斷另一個(gè)DOM元素是否是指定DOM元素的后代 |
$.each() |
遍歷指定的對(duì)象和數(shù)組 |
$.extend() |
將一個(gè)或多個(gè)對(duì)象的內(nèi)容合并到目標(biāo)對(duì)象 |
$.fn.extend() |
為jQuery擴(kuò)展一個(gè)或多個(gè)實(shí)例屬性和方法 |
$.globalEval() |
全局性地執(zhí)行一段JavaScript代碼 |
$.grep() |
過(guò)濾并返回滿足指定函數(shù)的數(shù)組元素 |
$.inArray() |
在數(shù)組中查找指定值并返回它的索引值(如果沒(méi)有找到,則返回-1) |
$.isArray() |
判斷指定參數(shù)是否是一個(gè)數(shù)組 |
$.isEmptyObject() |
檢查對(duì)象是否為空(不包含任何屬性) |
$.isFunction() |
判斷指定參數(shù)是否是一個(gè)函數(shù) |
$.isNumeric() |
判斷指定參數(shù)是否是一個(gè)數(shù)字值 |
$.isPlainObject() |
判斷指定參數(shù)是否是一個(gè)純粹的對(duì)象 |
$.isWindow() |
判斷指定參數(shù)是否是一個(gè)窗口 |
$.isXMLDoc() |
判斷一個(gè)DOM節(jié)點(diǎn)是否位于XML文檔中,或者其本身就是XML文檔 |
$.makeArray() |
將一個(gè)類似數(shù)組的對(duì)象轉(zhuǎn)換為真正的數(shù)組對(duì)象 |
$.map() |
指定函數(shù)處理數(shù)組中的每個(gè)元素(或?qū)ο蟮拿總€(gè)屬性),并將處理結(jié)果封裝為新的數(shù)組返回 |
$.merge() |
合并兩個(gè)數(shù)組內(nèi)容到第一個(gè)數(shù)組 |
$.noop() |
一個(gè)空函數(shù) |
$.now() |
返回當(dāng)前時(shí)間 |
$.parseHTML() |
將HTML字符串解析為對(duì)應(yīng)的DOM節(jié)點(diǎn)數(shù)組 |
$.parseJSON() |
將符合標(biāo)準(zhǔn)格式的JSON字符串轉(zhuǎn)為與之對(duì)應(yīng)的JavaScript對(duì)象 |
$.parseXML() |
將字符串解析為對(duì)應(yīng)的XML文檔 |
$.trim() |
去除字符串兩端的空白字符 |
$.type() |
確定JavaScript內(nèi)置對(duì)象的類型 |
$.unique() |
在jQuery 3.0中被棄用。對(duì)DOM元素?cái)?shù)組進(jìn)行排序,并移除重復(fù)的元素 |
$.uniqueSort() |
對(duì)DOM元素?cái)?shù)組進(jìn)行排序,并移除重復(fù)的元素 |
$.data() |
在指定的元素上存取數(shù)據(jù),并返回設(shè)置值 |
$.hasData() |
確定一個(gè)元素是否有相關(guān)的jQuery數(shù)據(jù) |
$.sub() |
創(chuàng)建一個(gè)新的jQuery副本,其屬性和方法可以修改,而不會(huì)影響原來(lái)的jQuery對(duì)象 |
$.speed |
創(chuàng)建一個(gè)包含一組屬性的對(duì)象用來(lái)定義自定義動(dòng)畫 |
$.htmlPrefilter() |
通過(guò)jQuery操作方法修改和過(guò)濾HTML字符串 |
$.readyException() |
處理包裹在jQuery()中函數(shù)同步拋出的錯(cuò)誤 |
jQuery 回調(diào)對(duì)象
jQuery 1.7 版本中新增的 jQuery.Callbacks() 函數(shù),返回一個(gè)多功能對(duì)象,此對(duì)象提供了一種強(qiáng)大的方法來(lái)管理回調(diào)列表。它能夠增加、刪除、觸發(fā)、禁用回調(diào)函數(shù)。
方法 |
描述 |
---|---|
$.Callbacks() |
一個(gè)多用途的回調(diào)列表對(duì)象,用來(lái)管理回調(diào)函數(shù)列表 |
callbacks.add() |
在回調(diào)列表中添加一個(gè)回調(diào)或回調(diào)的集合 |
callbacks.disable() |
禁用回調(diào)列表中的回調(diào)函數(shù) |
callbacks.disabled() |
確定回調(diào)列表是否已被禁用 |
callbacks.empty() |
從列表中清空所有的回調(diào) |
callbacks.fire() |
傳入指定的參數(shù)調(diào)用所有的回調(diào) |
callbacks.fired() |
確定回調(diào)是否至少已經(jīng)調(diào)用一次 |
callbacks.firewith() |
給定的上下文和參數(shù)訪問(wèn)列表中的所有回調(diào) |
callbacks.has() |
判斷回調(diào)列表中是否添加過(guò)某回調(diào)函數(shù) |
callbacks.lock() |
鎖定當(dāng)前狀態(tài)的回調(diào)列表 |
callbacks.locked() |
判斷回調(diào)列表是否被鎖定 |
callbacks.remove() |
從回調(diào)列表中的刪除一個(gè)回調(diào)或回調(diào)集合 |
jQuery 延遲對(duì)象
在jQuery 1.5中介紹了 Deferred 延遲對(duì)象,它是通過(guò)調(diào)用 jQuery.Deferred() 方法來(lái)創(chuàng)建的可鏈接的實(shí)用對(duì)象。它可注冊(cè)多個(gè)回調(diào)函數(shù)到回調(diào)列表,調(diào)用回調(diào)列表并且傳遞異步或同步功能的成功或失敗的狀態(tài)。
延遲對(duì)象是可鏈接的,類似于一個(gè) jQuery 對(duì)象可鏈接的方式,區(qū)別于它有自己的方法。在創(chuàng)建一個(gè) Deferred 對(duì)象之后,您可以使用以下任何方法,直接鏈接到通過(guò)調(diào)用一個(gè)或多個(gè)的方法創(chuàng)建或保存的對(duì)象。
方法 |
描述 |
---|---|
$.Deferred() |
返回一個(gè)鏈?zhǔn)綄?shí)用對(duì)象方法來(lái)注冊(cè)多個(gè)回調(diào) |
deferred.always() |
當(dāng)Deferred(延遲)對(duì)象被受理或被拒絕時(shí),調(diào)用添加的處理程序 |
deferred.done() |
當(dāng)Deferred(延遲)對(duì)象被受理時(shí),調(diào)用添加的處理程序 |
deferred.fail() |
當(dāng)Deferred(延遲)對(duì)象被拒絕時(shí),調(diào)用添加的處理程序 |
deferred.isRejected() |
從jQuery1.7開始已經(jīng)過(guò)時(shí),確定 Deferred 對(duì)象是否已被拒絕 |
deferred.isResolved() |
從jQuery1.7開始已經(jīng)過(guò)時(shí),確定 Deferred 對(duì)象是否已被解決 |
deferred.notify() |
給定一個(gè)參數(shù),調(diào)用正在延遲對(duì)象上進(jìn)行的回調(diào)函數(shù)( progressCallbacks ) |
deferred.notifyWith() |
給定上下文和參數(shù),調(diào)用正在延遲對(duì)象上進(jìn)行的回調(diào)函數(shù)( progressCallbacks ) |
deferred.pipe() |
過(guò)濾 and/or 鏈?zhǔn)窖舆t對(duì)象的工具方法 |
deferred.progress() |
當(dāng)Deferred(延遲)對(duì)象生成進(jìn)度通知時(shí),調(diào)用添加處理程序 |
deferred.promise() |
返回 Deferred(延遲)的 Promise 對(duì)象 |
deferred.reject() |
拒絕 Deferred(延遲)對(duì)象,并根據(jù)給定的參數(shù)調(diào)用任何 failCallbacks 回調(diào)函數(shù) |
deferred.rejectWith() |
拒絕 Deferred(延遲)對(duì)象,并根據(jù)給定的 context 和 args 參數(shù)調(diào)用任何 failCallbacks 回調(diào)函數(shù) |
deferred.resolve() |
解決Deferred(延遲)對(duì)象,并根據(jù)給定的參數(shù)調(diào)用任何 doneCallbacks 回調(diào)函數(shù) |
deferred.resolveWith() |
解決Deferred(延遲)對(duì)象,并根據(jù)給定的context 和 args 參數(shù)調(diào)用任何 doneCallbacks 回調(diào)函數(shù) |
deferred.state() |
確定一個(gè)Deferred(延遲)對(duì)象的當(dāng)前狀態(tài) |
deferred.then() |
當(dāng)Deferred(延遲)對(duì)象解決,拒絕或仍在進(jìn)行中時(shí),調(diào)用添加處理程序 |
.promise() |
返回一個(gè) Promise 對(duì)象,觀察某種類型被綁定到集合的所有行動(dòng),是否已被加入到隊(duì)列中 |