0

我想执行一个程序化的视图转换。

这是我尝试过的代码:

var v = registry.byId('myenergy-pane');
v.transitionTo("home-pane");

这是另一个

var v = registry.byId('myenergy-pane');
v.performTransition("home-pane",1,"slide",null);

他们都没有工作。

谢谢你的帮助。

4

1 回答 1

1

您提供的第二个代码应该可以工作,但这是考虑到以下事实:

代码在加载 DOM 并由dojo/parser. 正确的表示方法是使用dojo/ready,例如:

require(["dojo/ready"], function(ready) {
    var v = registry.byId('myenergy-pane');
    v.performTransition("home-pane", 1, "slide", null);
});

两个给定的 ID(myenergy-panehome-pane)都与一个小部件(不仅仅是一个 DOM 节点)相关,并且都是视图(dojox/mobile/View或继承自)。

确保您正在加载dijit/registry并且registry模块别名实际上映射到正确的模块。

我还制作了一个 JSFiddle 来证明它应该可以工作:http: //jsfiddle.net/g00glen00b/3JMnC/

于 2013-12-18T09:56:15.747 回答