jQuery 雜項方法
jQuery 雜項方法
方法 |
描述 |
data() |
向被選元素附加資料,或者從被選元素獲取資料 |
each() |
為每個匹配元素執行函式 |
get() |
獲取由選擇器指定的 DOM 元素 |
index() |
從匹配元素中搜索給定元素 |
$.noConflict() |
釋放變數 $ 的 jQuery 控制權 |
$.param() |
建立陣列或物件的序列化表示形式(可在生成 AJAX 請求時用於 URL 查詢字串中) |
removeData() |
移除之前存放的資料 |
size() |
在版本 1.8 中被廢棄。返回被 jQuery 選擇器匹配的 DOM 元素的數量 |
toArray() |
以陣列的形式檢索所有包含在 jQuery 集合中的所有 DOM 元素 |
pushStack() |
將一個DOM元素集合加入到jQuery棧 |
$.when() |
提供一種方法來執行一個或多個物件的回撥函式 |
jQuery 實用工具
方法 |
描述 |
$.boxModel |
在版本 1.8 中被廢棄。檢測瀏覽器是否使用W3C的CSS盒模型渲染當前頁面 |
$.browser |
在版本 1.9 中被廢棄。返回使用者當前使用的瀏覽器的相關資訊 |
$.contains() |
判斷另一個DOM元素是否是指定DOM元素的後代 |
$.each() |
遍歷指定的物件和陣列 |
$.extend() |
將一個或多個物件的內容合併到目標物件 |
$.fn.extend() |
為jQuery擴充套件一個或多個例項屬性和方法 |
$.globalEval() |
全域性性地執行一段JavaScript程式碼 |
$.grep() |
過濾並返回滿足指定函式的陣列元素 |
$.inArray() |
在陣列中查詢指定值並返回它的索引值(如果沒有找到,則返回-1) |
$.isArray() |
判斷指定引數是否是一個數組 |
$.isEmptyObject() |
檢查物件是否為空(不包含任何屬性) |
$.isFunction() |
判斷指定引數是否是一個函式 |
$.isNumeric() |
判斷指定引數是否是一個數字值 |
$.isPlainObject() |
判斷指定引數是否是一個純粹的物件 |
$.isWindow() |
判斷指定引數是否是一個視窗 |
$.isXMLDoc() |
判斷一個DOM節點是否位於XML文件中,或者其本身就是XML文件 |
$.makeArray() |
將一個類似陣列的物件轉換為真正的陣列物件 |
$.map() |
指定函式處理陣列中的每個元素(或物件的每個屬性),並將處理結果封裝為新的陣列返回 |
$.merge() |
合併兩個陣列內容到第一個陣列 |
$.noop() |
一個空函式 |
$.now() |
返回當前時間 |
$.parseHTML() |
將HTML字串解析為對應的DOM節點陣列 |
$.parseJSON() |
將符合標準格式的JSON字串轉為與之對應的JavaScript物件 |
$.parseXML() |
將字串解析為對應的XML文件 |
$.trim() |
去除字串兩端的空白字元 |
$.type() |
確定JavaScript內建物件的型別 |
$.unique() |
在jQuery 3.0中被棄用。對DOM元素陣列進行排序,並移除重複的元素 |
$.uniqueSort() |
對DOM元素陣列進行排序,並移除重複的元素 |
$.data() |
在指定的元素上存取資料,並返回設定值 |
$.hasData() |
確定一個元素是否有相關的jQuery資料 |
$.sub() |
建立一個新的jQuery副本,其屬性和方法可以修改,而不會影響原來的jQuery物件 |
$.speed |
建立一個包含一組屬性的物件用來定義自定義動畫 |
$.htmlPrefilter() |
通過jQuery操作方法修改和過濾HTML字串 |
$.readyException() |
處理包裹在jQuery()中函式同步丟擲的錯誤 |
jQuery 回撥物件
jQuery 1.7 版本中新增的 jQuery.Callbacks() 函式,返回一個多功能物件,此物件提供了一種強大的方法來管理回撥列表。它能夠增加、刪除、觸發、禁用回撥函式。
方法 |
描述 |
$.Callbacks() |
一個多用途的回撥列表物件,用來管理回撥函式列表 |
callbacks.add() |
在回撥列表中新增一個回撥或回撥的集合 |
callbacks.disable() |
禁用回撥列表中的回撥函式 |
callbacks.disabled() |
確定回撥列表是否已被禁用 |
callbacks.empty() |
從列表中清空所有的回撥 |
callbacks.fire() |
傳入指定的引數呼叫所有的回撥 |
callbacks.fired() |
確定回撥是否至少已經呼叫一次 |
callbacks.firewith() |
給定的上下文和引數訪問列表中的所有回撥 |
callbacks.has() |
判斷回撥列表中是否新增過某回撥函式 |
callbacks.lock() |
鎖定當前狀態的回撥列表 |
callbacks.locked() |
判斷回撥列表是否被鎖定 |
callbacks.remove() |
從回撥列表中的刪除一個回撥或回撥集合 |
jQuery 延遲物件
在jQuery 1.5中介紹了 Deferred 延遲物件,它是通過呼叫 jQuery.Deferred() 方法來建立的可連結的實用物件。它可註冊多個回撥函式到回撥列表,呼叫回撥列表並且傳遞非同步或同步功能的成功或失敗的狀態。
延遲物件是可連結的,類似於一個 jQuery 物件可連結的方式,區別於它有自己的方法。在建立一個 Deferred 物件之後,您可以使用以下任何方法,直接連結到通過呼叫一個或多個的方法建立或儲存的物件。
方法 |
描述 |
$.Deferred() |
返回一個鏈式實用物件方法來註冊多個回撥 |
deferred.always() |
當Deferred(延遲)物件被受理或被拒絕時,呼叫新增的處理程式 |
deferred.done() |
當Deferred(延遲)物件被受理時,呼叫新增的處理程式 |
deferred.fail() |
當Deferred(延遲)物件被拒絕時,呼叫新增的處理程式 |
deferred.isRejected() |
從jQuery1.7開始已經過時,確定 Deferred 物件是否已被拒絕 |
deferred.isResolved() |
從jQuery1.7開始已經過時,確定 Deferred 物件是否已被解決 |
deferred.notify() |
給定一個引數,呼叫正在延遲物件上進行的回撥函式( progressCallbacks ) |
deferred.notifyWith() |
給定上下文和引數,呼叫正在延遲物件上進行的回撥函式( progressCallbacks ) |
deferred.pipe() |
過濾 and/or 鏈式延遲物件的工具方法 |
deferred.progress() |
當Deferred(延遲)物件生成進度通知時,呼叫新增處理程式 |
deferred.promise() |
返回 Deferred(延遲)的 Promise 物件 |
deferred.reject() |
拒絕 Deferred(延遲)物件,並根據給定的引數呼叫任何 failCallbacks 回撥函式 |
deferred.rejectWith() |
拒絕 Deferred(延遲)物件,並根據給定的 context 和 args 引數呼叫任何 failCallbacks 回撥函式 |
deferred.resolve() |
解決Deferred(延遲)物件,並根據給定的引數呼叫任何 doneCallbacks 回撥函式 |
deferred.resolveWith() |
解決Deferred(延遲)物件,並根據給定的context 和 args 引數呼叫任何 doneCallbacks 回撥函式 |
deferred.state() |
確定一個Deferred(延遲)物件的當前狀態 |
deferred.then() |
當Deferred(延遲)物件解決,拒絕或仍在進行中時,呼叫新增處理程式 |
.promise() |
返回一個 Promise 物件,觀察某種型別被繫結到集合的所有行動,是否已被加入到佇列中 |