rik*_*nce 4 tree focus visible jstree
我有一个大型的jstree结构来实现一个分类经理.我通过id打开一个特定节点没有问题:treeElement.jstree('open_node',nodeId);
我写了一个搜索框,当我从搜索下拉列表中选择一个项目时,它会打开该项目的编辑框.但是,从左侧面板向下查看的树不会聚焦于此项目.我可以打开所选节点,但它可能在屏幕外,因为它可能位于树的不同部分,而不是当前可见的选择(它都在一个大的滚动区域中).
我的问题:我怎样才能使树聚焦在所需的节点上?用户需要实际查看所选节点所在树中的位置.我不想向上或向下滚动来找到它.这似乎相当标准,但我无法在任何地方找到答案.谢谢!
使用get_nodeasDom参数设置为true 的函数,然后聚焦,如下所示:
treeElement.jstree(true).get_node(nodeId, true).children('.jstree-anchor').focus();
Run Code Online (Sandbox Code Playgroud)
请记住,节点必须是可见的(在DOM中)才能使其工作.
如果节点不可见(其中一个父节点已关闭),您可以使用内部_open_to函数来显示它(您也可以将其集中在此处以保持简单):
treeElement.jstree(true)._open_to(nodeId).focus();
Run Code Online (Sandbox Code Playgroud)
最好的问候,伊万