Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jstree自定义插件_Javascript_Jquery_Tree_Jstree - Fatal编程技术网

Javascript Jstree自定义插件

Javascript Jstree自定义插件,javascript,jquery,tree,jstree,Javascript,Jquery,Tree,Jstree,我们有一个JStree1.0-rc3项目。为了扩展基本功能,我们使用JQuery.jstree.plugin()函数编写了自定义扩展。换句话说,我们创建了自定义插件,并将其作为常用插件使用。最近我们决定将jstree版本更新到最新版本(3.3.8),我遇到了麻烦,因为这个函数(JQuery.jstree.plugin)已经不存在了,我也找不到任何类似的函数。由于我们的自定义插件的大小(数百行)和我们使用它的大量位置,我们不想将功能从自定义插件移动到其他地方,因为这将花费很多时间。有人知道如何在最

我们有一个JStree1.0-rc3
项目。为了扩展基本功能,我们使用
JQuery.jstree.plugin()
函数编写了自定义扩展。换句话说,我们创建了自定义插件,并将其作为常用插件使用。最近我们决定将jstree版本更新到最新版本(3.3.8),我遇到了麻烦,因为这个函数(JQuery.jstree.plugin)已经不存在了,我也找不到任何类似的函数。由于我们的自定义插件的大小(数百行)和我们使用它的大量位置,我们不想将功能从自定义插件移动到其他地方,因为这将花费很多时间。有人知道如何在最新的
jstree(现在是3.3.8)
中创建自定义插件吗?非常感谢

添加自定义插件的功能仍然存在于当前jsTree版本(3.3.8)中。作为示例,已经对其进行了解释

// conditional select
(function ($, undefined) {
  "use strict";
  $.jstree.defaults.conditionalselect = function () { return true; };
  $.jstree.plugins.conditionalselect = function (options, parent) {
    this.activate_node = function (obj, e) {
      if(this.settings.conditionalselect.call(this, this.get_node(obj))) {
        parent.activate_node.call(this, obj, e);
      }
    };
  };
})(jQuery);
$("#tree").jstree({
  "conditionalselect" : function (node) {
    return node.text === "Root node" ? false : true;
  },
  "plugins" : ["conditionalselect"]
});
请按照如何包含您自己的插件或任何第三方插件的方法进行说明。您必须在页面上包含其源代码,并在“插件”配置数组中列出其名称

您可以查看jstree/src/misc.js以查找许多已经编写的自定义插件