gpt4 book ai didi

javascript - Dojo - 将 dijit 添加到关闭的 TitlePane

转载 作者:行者123 更新时间:2023-11-28 21:25:18 25 4
gpt4 key购买 nike

当 TitlePane 的 open 属性设置为 false 时,我无法向内容动态添加小部件。

例如,以下代码不起作用。

var tp = new dijit.TitlePane({
title: "Title Pane"
, content: ""
, open: false
})

var tabs = new dijit.layout.TabContainer({
region:"center"
, content:"Service Details"
, tabStrip: true
}).placeAt(tp.containerNode);

但是当 open 属性设置为 true 时,选项卡容器就会出现。

var tp = new dijit.TitlePane({
title: "Title Pane"
, content: ""
, open: true
})

var tabs = new dijit.layout.TabContainer({
region:"center"
, content:"Service Details"
, tabStrip: true
}).placeAt(tp.containerNode);

当 open 属性设置为 false 时,如何将小部件添加到 TitlePane?

最佳答案

您确定在以编程方式创建的小部件上正确调用了startup吗?无论 opentrue 还是 false,以下内容都适用于我:

dojo.require('dijit.TitlePane');
dojo.require('dijit.layout.TabContainer');
dojo.require('dijit.layout.ContentPane');
dojo.ready(function() {
var tp = new dijit.TitlePane({
title: "Title Pane",
content: "",
open: false
}).placeAt(dojo.body());


var tabs = new dijit.layout.TabContainer({
region: "center",
content: "Service Details",
tabStrip: true
}).placeAt(tp.containerNode);
tabs.startup();
tabs.addChild(new dijit.layout.ContentPane({
title: 'foo', content: 'bar'
}));

//putting this after adding the tabcontainer
//avoids problems when open is initially true
tp.startup();
});

澄清调用startup:

通常,任何时候您以编程方式创建小部件时,都需要手动调用其startup。然而...

一般的异常(exception)是在处理容器或布局小部件的子级时(在本例中,dijit.TitlePane 扩展了 dijit.layout.ContentPane,其行为类似于布局小部件) - 这些子项会在子项自身启动时(或者在 ContentPane 的情况下,也在设置/加载新内容时)调用 startup

容器小部件(不是 ContentPane,而是例如 BorderContainerStackContainer 及其子类,例如 AccordionContainerTabContainer) 还会对容器启动后添加的子项调用 startup

关于javascript - Dojo - 将 dijit 添加到关闭的 TitlePane,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5219826/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com