gpt4 book ai didi

javascript - 在jstree中如何将指定的节点聚焦在一棵大树上?

转载 作者:行者123 更新时间:2023-12-04 22:45:20 27 4
gpt4 key购买 nike

我有一个大型 jstree 结构来实现分类管理器。我通过 id 打开特定节点没有问题:
treeElement.jstree('open_node', nodeId);

我写了一个搜索框,当我从搜索下拉列表中选择一个项目时,它会打开这个项目的编辑框。但是,在左侧面板下方的 View 中仍然存在的树不关注该项目。我可以打开选定的节点,但它可能不在屏幕上,因为它可能与当前可见的选择位于树的不同部分(它都在一个大滚动区域中)。

我的问题:我怎样才能使树专注于所需的节点?用户需要实际查看他们选择的节点在树中的位置。我不想必须向上或向下滚动才能找到它。这似乎相当标准,但我无法在任何地方找到答案。谢谢!

最佳答案

使用 get_node将 asDom 参数设置为 true 的函数,然后聚焦,如下所示:

treeElement.jstree(true).get_node(nodeId, true).children('.jstree-anchor').focus();

请记住,节点必须是可见的(在 DOM 中)才能正常工作。

如果节点不可见(其父节点之一已关闭),您可以使用内部 _open_to函数来显示它(你也可以把它集中在这里以保持简单):
treeElement.jstree(true)._open_to(nodeId).focus();

此致,
伊万

关于javascript - 在jstree中如何将指定的节点聚焦在一棵大树上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29563712/

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