如何使用node.setExpanded(true);
将树扩展到某个级别?
我的意思是我有6个深度级别,只想要扩展5个 - 最后一个应该被排除。
答案 0 :(得分:2)
$("#treeView").fancytree("getRootNode").visit(function(node){
if(node.getLevel() < 3) {
node.setExpanded(true);
}
});
答案 1 :(得分:1)
这只是一个指南,因为您没有提供示例数据或代码,但您可以使用递归函数来迭代树,在达到特定深度时停止。类似的东西:
function expandNode(node, depth) {
// Expand this node
node.setExpanded(true);
// Reduce the depth count
depth--;
// If we need to go deeper
if (depth > 0) {
for (var i = 0; i < node.children.length; i++) {
// Go recursive on child nodes
expandNode(node.children[i], depth);
}
}
}
并使用根节点和总体深度调用它:
expandNode(rootNode, 5);
可能有更好的方法来迭代一个fancytree,但我还没有使用过fancytree