jsTree - 上次选择的节点突出显示问题

Yai*_*vet 3 javascript jquery jstree

我在我的jsTree中使用cookies插件,以便记住并恢复用户点击的最后一个节点.

我的树的行为是在节点的双击上我将客户端重定向到我站点中的适当页面.

我希望在重定向后突出显示最后一个双击节点,但由于某种原因,我必须在同一节点上再次双击才能突出显示,这似乎突出显示了之前选择的节点最后选择的节点.

任何的想法?

Jon*_*onn 5

我们可能遇到了同样的问题.将以下代码添加到jstree cookies配置中:

cookies: { cookie_options: { path: '/' } }

所以你将有一个类似于这样的树配置:

$('.my-tree').jstree({
            plugins: ["html_data", "ui", "cookies"]
            cookies: { cookie_options: { path: '/' } }
    })
Run Code Online (Sandbox Code Playgroud)

这是怎么回事?

这样做的原因是,如果jQuery cookie(库jstree用于编写其cookie)没有设置路径,则cookie将相对于您当前的页面进行存储.

因此,例如,如果您有两个节点(也是叶子/针):

  • http://localhost/Home/ 与节点ID localhost_home
  • http://localhost/Admin/ 与节点ID localhost_admin

你想从浏览http://localhost/Home/http://localhost/Admin/点击的localhost_admin节点,你可能希望通过你的时间http://localhost/Admin/jstree_selectcookie将有localhost_admin选择的权利?

这里真正发生的是现在存在2个单独的cookie.一个包含http://localhost/Home/另一个http://localhost/Admin/包含2个单独的值.

通过将路径选项设置为/,我们确保在所有页面中只共享一个cookie.