以编程方式打开 Dijit AccordionContainer 内的窗格的最佳方法是什么

2024-01-02

我正在尝试以编程方式打开和关闭手风琴窗格。这是我的代码的简化版本。即使我将第一个窗格的选择设置为 false,并将第二个窗格的选择设置为 true,但在浏览器 (FF3) 上加载时,只有第一个窗格会打开。

var accordionContainer = new dijit.layout.AccordionContainer().placeAt("test");
var accordPane = new dijit.layout.ContentPane({"title": "test", "content":"hello"});
var accordPane2 = new dijit.layout.ContentPane({"title": "test1", "content":"hello1"});
accordionContainer.addChild(accordPane);
accordionContainer.addChild(accordPane2, 1);
accordPane.startup();
accordPane2.startup();
//accordionContainer.selectChild(accordPane2);
accordionContainer.startup();
accordPane.selected = false;
accordPane2.selected = true;

你可以这样做:

accordionContainer.selectChild( accordPane2 );

假设您使用的是 dojo 1.3。

dijit.layout.AccordionContainer是一个子类dijit.layout.StackContainer, 其中有selectChild定义的。

我设置了一个演示页面,您可以在其中看到此代码的运行情况 http://jsbin.com/elimo

如果你打电话selectChild before startup,这可能会导致您看到的错误,因为小部件未处于“完整”状态。 (抱歉,在我发布原始答案之前错过了通讯代码)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以编程方式打开 Dijit AccordionContainer 内的窗格的最佳方法是什么 的相关文章

随机推荐