2015-07-20 52 views
0

Dojo.connect已過時,但爲什麼追趕一個TitlePane觸發事件以下工作:道場對不捉TitlePane觸發事件

dojo.connect(myTitlePane, "toggle", function() { alert("toggled"); }); 

而這不起作用:

on(myTitlePane, "toggle", function() { alert("toggled"); }); 

回答

1

在新的Dojo中,事件使用dojo/on進行處理,普通方法調用使用dojo/aspect進行處理。

aspect.after(p, "toggle", function() { 
    alert("toggled."); 
}); 

Handy-dandy jsfiddle

+0

謝謝。我其實已經嘗試過了,但是我在事件名稱中有一個錯字,所以我認爲這是不正確的。哈哈:) – Matt

0

可能的是,所述myTitlePane應該由作爲被引用:

require(["dojo/aspect"],function(aspect){ 
    var myTitlePane = registry.byId("myTitlePane"); 
    aspect.after(myTitlePane, "toggle", function() { 
      alert("toggled."); 
    } 

});

然後myTitlePane是dijit對象,而不是dom對象。 Then