保持当前节点打开并折叠 GetOrgChart 中的其他节点
Posted
技术标签:
【中文标题】保持当前节点打开并折叠 GetOrgChart 中的其他节点【英文标题】:Keep current node open and collapse other nodes in GetOrgChart 【发布时间】:2017-05-28 18:59:00 【问题描述】:我正在使用GetOrgChart 创建组织结构图。
一切运行顺利,但是,它不允许您折叠其他节点并保持当前节点打开。
请查看JSFiddle 示例,我从那里获取演示。
在他们的documentation 中列出了一种方法expandOrCollapse
,但是没有详细说明它是如何工作的。
我只是想知道这在 GetOrgChart 组件中是否可行。
提前致谢。
【问题讨论】:
【参考方案1】:你可以使用expand方法。
这里是方法expand(node, callback)的签名
node – 是节点对象,如果知道要展开的节点的id,则节点对象为orgchart.nodes[“expandToThisId”] callback – 将orgchart展开到动画的指定节点,动画完成时会调用callback方法还有例子:
var orgchart = new getOrgChart(document.getElementById("people"),
expandToLevel: 2,
scale: 0.5,
dataSource: [
id: 1, parentId: null, Name: "1",
id: 2, parentId: 1, Name: "2",
id: 3, parentId: 1, Name: "3",
id: 4, parentId: 2, Name: "4",
id: 5, parentId: 2, Name: "5",
id: 6, parentId: 3, Name: "6",
id: 7, parentId: 3, Name: "7",
id: 8, parentId: 5, Name: "8",
id: 9, parentId: 5, Name: "9"]
);
orgchart.expand(orgchart.nodes["5"]);
html, body margin: 0px; padding: 0px;height: 100%; overflow: hidden;
#people width: 100%;height: 100%;
<link href="http://www.getorgchart.com/GetOrgChart/getorgchart/getorgchart.css" rel="stylesheet"/>
<script src="http://www.getorgchart.com/GetOrgChart/getorgchart/getorgchart.js"></script>
<div id="people"></div>
【讨论】:
缪斯:你能解释一下expand
方法是如何折叠相应的节点并保持被点击的元素展开的吗?在您的示例中,当我单击节点 3 时,节点 2 没有折叠,节点 2 也保持打开状态。谢谢。以上是关于保持当前节点打开并折叠 GetOrgChart 中的其他节点的主要内容,如果未能解决你的问题,请参考以下文章
修改 Twitter Bootstrap 折叠插件以保持手风琴打开