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 物件,觀察某種型別被繫結到集合的所有行動,是否已被加入到佇列中