1、dojo.connect(
/*Object|null*/ obj, 對dom節點的引用,注意使用dijit.byId(),,不要使用dojo.byId()
/*String*/ event, 事件
/*Object|null*/ context, 事件處理函數所屬的範圍
/*String|Function*/ method, 事件處理函數,可以是函數名字符串;函數只接收一個event參數(事件對象),不返回任何數據。
/*Boolean?*/ dontFix)
例如:
dojo.connect(obj, "onchange", ui, "update");
dojo.connect(obj, "onchange", ui, ui.update); // same
事件處理函數接收的事件對象參數,包括很多有用的屬性:
target:事件觸發的dom節點
layerX/Y、pageX/Y:鼠標所在位置,其中前者是相對於觸發事件的節點而言的,後者是在瀏覽器中的位置。
Type:事件對象類型,前面不帶on,如click
charCode:按鍵按下時的鍵盤碼
AOP編程:將程序執行的某些類型也看作是事件。例如:執行一個函數也當作是事件,在執行完後觸發另一個事件。
針對AOP的 Dojo.connect(obj,method,obj1,method1):obj所屬的method方法執行完後,會觸發obj1的method1方法的執行。
例如:
dojo.connect(ob, "onCustomEvent", null, "customEventHandler");
//When ob.onCustomEvent executes, customEventHandler is invoked:
2、dojo.disconnect();解除事件綁定