什么是jsTree?

jsTree 是一个jquery 插件, 提供交互式树.它是完全免费的,开源的,并根据MIT许可进行分发。jsTree易于扩展,可定义和配置,它支持HTML和JSON数据源以及AJAX加载。

jsTree可以在盒子模型(内容框或边框)中正常运行,可以作为AMD模块加载,并具有用于响应式设计的内置移动主题,可以轻松自定义。它使用jQuery的事件系统,因此对树中各种事件的绑定回调是熟悉且容易的。

仅有的一些功能值得注意:

  • 拖放支持
  • 键盘导航
  • 内联编辑,创建和删除
  • 三态复选框
  • 模糊搜索
  • 可定制的节点类型


Chrome 14+, Firefox 3.5+, Opera 12+, Safari 4+, IE8+
以上的旧版本可能可以运行,但未经测试


  下载

  • 根节点 1
    • 最初 选择
    • 自定义图标网址
    • 最初开放
      • 另一个节点
    • 自定义图标类 (bootstrap)
  • 根节点 2

配置实例

如概述中所述创建实例不会修改任何默认值:

$('#jstree').jstree();

您可以更改所有将来实例的默认值:

$.jstree.defaults.core.themes.variant = "large";
$('#jstree').jstree();

但是大多数时候,您只想为正在创建的实例更改默认值。这是通过在创建实例时传入配置对象来实现的:

$('#jstree').jstree({
  "plugins" : [ "wholerow", "checkbox" ]
});

如上例所示,config对象中有一个特殊的键名为plugins。它是一个字符串数组,其中包含要在该实例上活动的插件的名称。

所有不依赖于插件core的选项都包含在名为config对象的键中,每个插件的选项都包含在与插件同名的键中:

$('#jstree').jstree({
  "core" : {
    "themes" : {
      "variant" : "large"
    }
  },
  "checkbox" : {
    "keep_selected_style" : false
  },
  "plugins" : [ "wholerow", "checkbox" ]
});

您可以查看所有选项及其默认值。您可以在每个实例上配置此列表。
例如,默认情况下,树允许如中所述进行多项选择$.jstree.defaults.core.multiple,以覆盖以确保您的配置对象包含"core" : { "multiple" : false }。如果您对同一个键有多个替代(例如"core"此处),请对它们进行分组:

$("#jstree").jstree({
  "core" : {
    "multiple" : false,
    "animation" : 0
  }
});
www.jstree.com.cn    jstree中文网    [英文站]