如何使用node.setExpanded(true);
将树仅扩展到某个级别?
我的意思是我有 6 个深度级别,只希望扩展 5 个——应该排除最后一个。
$("#treeView").fancytree("getRootNode").visit(function(node){
if(node.getLevel() < 3) {
node.setExpanded(true);
}
});
这只是一个指南,因为您没有提供示例数据或代码,但您可以使用递归函数来迭代树,当达到特定深度时停止。就像是:
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);
可能有更好的方法来迭代花式树,但我以前没有使用过花式树