99re热这里只有精品视频,7777色鬼xxxx欧美色妇,国产成人精品一区二三区在线观看,内射爽无广熟女亚洲,精品人妻av一区二区三区

jQuery的Callbacks機制

2018-07-24 10:49 更新

講了 Deferred ,現在再來看 Callbacks ,這才是本源。事實上, Deferred 機制,只是在 Callbacks 機制的上層進行了一層簡單封裝而且。 Callbacks 對象,才是真正的 jQuery 中定義的原始的回調管理機制。

var obj = $.Callbacks();
obj.add(function(){console.log('1')});
obj.add(function(){console.log('2')});
obj.fire();

Callbacks 對象的初始化支持一組控制參數:

$.Callbacks( flags )
初始化一個回調管理對象。 flags 是空格分割的多個字符串,以定義此回調對象的行為:
  • once 回調鏈只能被激發(fā)一次
  • memory 回調鏈被激發(fā)后,新添加的函數被立即執(zhí)行
  • unique 相同的回調函數只能被添加一次
  • stopOnFalse 當有回調函數返回 false 時終止調用鏈的執(zhí)行

Callbacks 的控制方法:

callbacks.add()
添加一個或一串回調函數
callbacks.fire()
激發(fā)回調
callbacks.remove()
從調用鏈中移除指定的函數
callbacks.empty()
清空調用鏈
callbacks.disable()
關閉調用鏈的繼續(xù)執(zhí)行,新添加的函數也不會被執(zhí)行
callbacks.lock()
鎖定調用鏈,但是如果打開了 memory 的 flag ,新添加的函數仍然會執(zhí)行
callbacks.has()
檢查一個函數是否處于回調鏈之中
callbacks.fired()
檢查調用鏈是否已經被激發(fā)
callbacks.locked()
檢查調用鏈是否被鎖定


以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號