我正在使用StackContainer作为菜单,但我在stackcontainer中的“tabs”上附加自定义onclick事件时遇到问题。
我的应用程序基本上是这样布局的:
header
subheader
content
Header具有stackcontroller选项卡,内容显然显示内容。但是,当我单击标题中的任何选项卡元素时,我想运行一个相应更改子标题的函数。现在我该怎么做?内容切换效果很好,所以没有任何问题。
我正在使用ContentPanes作为标签元素,我试图直接点击它们,我尝试使用dojo.connect - 没有运气。我有jQuery和amp;的经验简单的JS,但我是一个道场新手,请原谅我,如果我错过了一些非常明显的事情:)
答案 0 :(得分:2)
最简单的方法是使用内置于窗口小部件中的pub / sub机制。
在选择子项时,StackContainer将发布:
dojo.publish(this.id+"-selectChild", [page]);
其中page是要选择的子窗口小部件。
所以你应该使用:
dojo.subscribe(myStackId, function(/* dijit */ selectedChild) {
// use the selectedChild to do what you want
});
顺便说一句,dijits提供了骆驼套装的标准化事件。所以你可以连接到dijit的onclick事件,但为了做到这一点,你应该使用'onClick'。但是,如果您使用此方法,则不一定能保证选择了孩子。