JsTree多树cookie

时间:2012-02-01 20:20:06

标签: javascript jquery jstree

大家好我使用jstree,我在同一页面上有多个树。我有两个问题:

1)我想要cookie以区分每棵树中哪些节点是开放的。我尝试使用前缀实现此功能但不幸的是:

"cookies" : { "cookie_options" : { "prefix" : "home" } },

不起作用,因为刷新后只重新打开最后打开的节点。

2)我不希望能够创建新的根节点。我只希望能够创建文件或将文件传输到我的根目录。

我正在努力实现这一点:

"types" : {
            "types" : {
                // The default type
                "default" : {
                    "valid_children" : "none",
                    "icon" : {
                        "image" : "./file.png"
                    }
                },
                // The `folder` type
                "folder" : {
                    "valid_children" : [ "default", "folder", "file" ],
                    "icon" : {
                        "image" : "./folder.png"
                    }
                },
                // The `drive` nodes 
                "drive" : {
                    // can have files and folders inside, but NOT other `drive` nodes
                    "valid_children" : [ "default", "folder" ],
                    "icon" : {
                        "image" : "./root.png"
                    },
                    // those prevent the functions with the same name to be used on `drive` nodes
                    // internally the `before` event is used
                    "start_drag" : false,
                    "move_node" : false,
                    "delete_node" : false,
                    "remove" : false
                }
            }
        },

但我仍然可以将文件发布到我的根目录中。我应该在根目录之上创建另一个<li>而不是rel=drive吗?

感谢。

1 个答案:

答案 0 :(得分:2)

多树中cookie的解决方案:

.
.
"cookies": {
  "save_selected": "node_selected_" + tree_id
  "save_opened": "node_opened_" + tree_id
},
.
.

没有&#34;前缀&#34;这样的选项。 &#34; save_selected&#34;和&#34; save_opened&#34;采取字符串或错误。通过提供不同的tree_id,您可以有效地为每棵树使用不同的cookie。