Jquery jsTree-在创建新节点时防止父节点打开

Jquery jsTree-在创建新节点时防止父节点打开,jquery,jstree,Jquery,Jstree,我用jquery jstree(1.0)创建了一个树。 当我在树中的某个父节点内创建新节点时,默认情况下会打开父节点。我想知道如何防止父节点打开。 我尝试使用“open_onmove”:false,但它不起作用。这是标准行为,查看代码时,我看不到绕过它的选项。假设您使用的是element.jstree('create'..)命令,您通常希望立即打开输入字段以输入新的文件夹名称,如果它不展开父文件夹名称,这看起来会很奇怪 我不确定您的具体情况是什么,但查看代码,您在JStree1.0-RC3中的1

我用jquery jstree(1.0)创建了一个树。 当我在树中的某个父节点内创建新节点时,默认情况下会打开父节点。我想知道如何防止父节点打开。
我尝试使用“open_onmove”:false,但它不起作用。

这是标准行为,查看代码时,我看不到绕过它的选项。假设您使用的是
element.jstree('create'..)
命令,您通常希望立即打开输入字段以输入新的文件夹名称,如果它不展开父文件夹名称,这看起来会很奇怪

我不确定您的具体情况是什么,但查看代码,您在JStree1.0-RC3中的1340处有这一行

if(p.length && p.hasClass("jstree-closed")) { this.open_node(p, false, true); }

其中
p
是父项。因此,基本上,它正在打开节点(如果尚未打开的话)。如果您不想修改jstree文件本身(您可能想这样做),我建议您采取一种变通方法,在添加新节点之前,尝试删除或操作父元素的
.jstree closed
类,然后替换
element.jstree('create')的回调部分中的类
jstree.create_node(…)
,无论您使用哪种方法。

我确实使用了一种解决方法。我侦听“before.jstree”事件,如果操作是“open_node”,那么我将阻止操作在所需情况下执行(由一个prevent_open变量调节)。谢谢你的建议。