在jstree中,如何在大型树上聚焦指定节点?
我有一个大型jstree结构来实现分类管理器。我可以通过id打开特定节点: jstree('open_node',nodeId) 我已经编写了一个搜索框,当我从搜索下拉列表中选择一个项目时,它会为该项目打开一个编辑框。但是,左侧面板下方视图中的树并不关注此项。我可以打开所选节点,但它可能不在屏幕上,因为它可能位于树中与当前可见选择不同的部分(都在一个大的滚动区域)在jstree中,如何在大型树上聚焦指定节点?,tree,focus,jstree,visible,Tree,Focus,Jstree,Visible,我有一个大型jstree结构来实现分类管理器。我可以通过id打开特定节点: jstree('open_node',nodeId) 我已经编写了一个搜索框,当我从搜索下拉列表中选择一个项目时,它会为该项目打开一个编辑框。但是,左侧面板下方视图中的树并不关注此项。我可以打开所选节点,但它可能不在屏幕上,因为它可能位于树中与当前可见选择不同的部分(都在一个大的滚动区域) 我的问题:如何使树集中在所需节点上?用户需要实际查看所选节点在树中的位置。我不想上下滚动来找到它。这似乎相当标准,但我在任何地方都找
我的问题:如何使树集中在所需节点上?用户需要实际查看所选节点在树中的位置。我不想上下滚动来找到它。这似乎相当标准,但我在任何地方都找不到答案。谢谢 我知道,当您从下拉列表中选择一个节点时,您也希望看到它。 您是否尝试过使用jQuery.focus()
使用asDom参数设置为true的
get_node
函数,然后聚焦,如下所示:
treeElement.jstree(true).get_node(nodeId, true).children('.jstree-anchor').focus();
请记住,节点必须是可见的(在DOM中),才能工作
如果节点不可见(其父节点之一已关闭),则可以使用内部的\u open\u to
功能显示该节点(也可以将其聚焦在此处以保持简单):
致以最良好的祝愿,
Ivan1-在jstree的核心中必须添加(“动画”:0) 2-选择节点:
var str1 ='mynodeid';
$("#demo1").jstree('select_node', "#" + str1 );
3-在绑定选择节点功能中:
.bind("select_node.jstree", function (event, data) {
data.inst._fix_scroll(data.rslt.obj);
}
"core": {
"initially_open": ["phtml_1"],
"rtl": true,
"animation": 0
},
var str1 ='mynodeid';
$("#demo1").jstree('select_node', "#" + str1 );
.bind("select_node.jstree", function (event, data) {
data.inst._fix_scroll(data.rslt.obj);
}