简介

zTree 是一个依靠 jQuery 实现的多功能 “树插件”。

网址:http://www.ztree.me/v3/main.php#_zTreeInfo

上面的网址里有ztree的详细介绍、Demo 演示、API 文档、入门指南 以及下载。

这里不再赘述。


使用说明

1、下载ztree文件
将需要使用的 zTree v3.x 相关的 js、css、img 文件分别放置到相应目录,并且保证相对路径正确。
2、引入ztree文件
将下载的ztree文件保留需要用的相关的 js、css、img 文件整个复制到自己的项目相应的文件夹下,如下图,我习惯将这类插件统一放在common/plugin/下,(其他不需要用的文件可以删除。

3、html 页面
分别在<head>和<body>中引入css、js文件,如代码所示。

按照以下代码,制作 html 页面,注意:

zTree 的容器 className 别忘了设置为 "ztree"!!!

示例代码

  • html代码:
    <!DOCTYPE html>
    <html lang="en-us">

      <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title>ztreeDemo</title>
    <link rel="stylesheet" href="../../../common/plugin/ztree/zTreeStyle.css" type="text/css"> </head>
    <body>
    <div class="row">
    <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 pt10">
    <div class="well sidebar-nav ">
    <ul id="planTree" class="ztree"></ul>
    </div>
    </div> <!-- zTree 这里使用的 all.js = core + excheck + exedit ( 不包括 exhide )-->
    <script src="../../../common/plugin/ztree/jquery.ztree.all.min.js"></script>
    <!--my zTree 这里引入的是下面所示的js代码文件 -->
    <script src ="../../../common/js-data/mytree.js"></script>
    </body>

    </html>

  • js代码:
    (这些代码,我写在了按习惯的相应页面html同名的.js文件中,在<body>引入的ztree.all.min.js之下,将该文件引入页面即可。)

     $(function () {
    init();
    }); function init() {
    builePlanTree();
    } //ZTREE
    function builePlanTree() {
    var setting = {
    view: {
    showIcon: true//设置 zTree 是否显示节点的图标。
    },
    data: {
    simpleData: {
    enable: true
    }
    },
    callback: {
    // beforeExpand: beforeExpand,
    // onExpand: onExpand,
    onClick: zTreeOnClick
    }
    } var zNodes =[
    { id:1, pId:0, name:"课程目录", open:true},
    { id:11, pId:1, name:"季度产品知识课程", open:true},
    { id:111, pId:11, name:"13Q4产品知识", },
    { id:112, pId:11, name:"14Q1产品知识", },
    { id:113, pId:11, name:"14Q2产品知识", },
    { id:114, pId:11, name:"14Q3产品知识", },
    { id:115, pId:11, name:"14Q4产品知识", },
    { id:12, pId:1, name:"项目宣讲类课程", open:true},
    { id:121, pId:12, name:"项目宣讲类课程1"},
    { id:122, pId:12, name:"项目宣讲类课程2"},
    { id:123, pId:12, name:"项目宣讲类课程3"},
    { id:13, pId:1, name:"移动商学院", open:true},
    { id:131, pId:13, name:"技能类"},
    { id:132, pId:13, name:"心态类"},
    { id:132, pId:13, name:"知识类"}

    ];

      $.fn.zTree.init($("#planTree"), setting, zNodes);
    
         function zTreeOnClick(event, treeId, treeNode) {
    //这里定义点击书中节点时,相应的页面其他的操作,示例:
    // 每次点击节点后, 弹出该节点的 tId、name 的信息
    alert(treeNode.tId + ", " + treeNode.name);
    }; }

这样页面上的树目录就成了,效果如下图所示:

总结

很明显,这样的树只是一个静态固定节点的树,在大型项目中,往往需要不同的用户看到不同的目录,不同的地区显示不同的目录,等等,但你又不能一个一个定义这些配置来满足那么多数据需求,所以就需要异步加载子节点的的父节点,通过构造treeNode的 JSON 数据对象方法来实现,这个方法会在本专栏 后面 zTree -- jQuery 树插件 构造treeNode JSON 数据对象 文章给写出(未完 待续) 。

zTree -- jQuery 树插件 使用方法与例子的更多相关文章

  1. zTree -- jQuery 树插件

    http://www.ztree.me/v3/main.php#_zTreeInfo http://plugins.jquery.com/zTree.v3/ 例子:http://www.ztree.m ...

  2. 主攻ASP.NET.4.5.1 MVC5.0之重生:在项目中使用zTree jQuery 树插件

    效果图和json格式 Controllers代码 using HR.Models; using HR.Models.Repository; /***************************** ...

  3. zTree -- jQuery 树插件实现点击文字展开子节点

    新版本的zTree是单击+号展开子项,点击文字选中该项,双击文字展开子项 项目用的是3.5版本的,如果要点击文字展开子项暂时没查到资料,自己琢磨了下 项目用的是jquery.ztree.core-3. ...

  4. zTree 优秀的jquery树插件

    zTree 优秀的jquery树插件,文档详细,渲染快 使用方法: 1.引用zTree的js和css文件 <link href="~/Content/zTree_v3/css/zTre ...

  5. 顶级jQuery树插件

    顶级jQuery树插件 顶级jQuery树插件 2013-03-05 17:20 139人阅读 评论(0) 收藏 举报 jsTree JsTree是一个基于jQuery的Tree控件.支持HTML.J ...

  6. ASP.NET MVC jQuery 树插件在项目中使用方法(一)

    jsTree是一个 基于jQuery的Tree控件.支持XML,JSON,Html三种数据源.提供创建,重命名,移动,删除,拖"放节点操作.可以自己自定义创建,删 除,嵌套,重命名,选择节点 ...

  7. jquery编写插件的方法

     版权声明:作者原创,转载请注明出处! 编写插件的两种方式: 1.类级别开发插件(1%) 2.对象级别开发(99%) 类级别的静态开发就是给jquery添加静态方法,三种方式 1.添加新的全局函数 2 ...

  8. 再谈:jquery编写插件的方法

    版权声明:作者原创,转载请注明出处! 编写插件的两种方式: 1.类级别开发插件(1%) 2.对象级别开发(99%) 类级别的静态开发就是给jquery添加静态方法,三种方式 1.添加新的全局函数 2. ...

  9. Jquery开发插件的方法

    Jquery未开发插件提供了两个方法: (1)Jquery.extend(object)    -为Jquery类本身添加新的方法;代码如下: $.extend({ add:function(a,b) ...

随机推荐

  1. 如何在hexo博客中在线阅读pdf

    前言 有一些资料或者笔记是pdf版本的,如果想要放在博客中进行阅读,那么就得将其转换为markdown格式或者html格式.但是这样转换后,其原pdf的格式就会混乱了,排版将会变得很困难,不过一山更比 ...

  2. JZ-012-数值的整数次方

    数值的整数次方 题目描述 给定一个double类型的浮点数base和int类型的整数exponent.求base的exponent次方. 保证base和exponent不同时为0. 题目链接: 数值的 ...

  3. oauth2.0密码模式详解

    oauth2.0密码模式 欢迎关注博主公众号「Java大师」, 专注于分享Java领域干货文章http://www.javaman.cn/sb2/oauth-password 如果你高度信任某个应用, ...

  4. Guava中这些Map的骚操作,让我的代码量减少了50%

    原创:微信公众号 码农参上,欢迎分享,转载请保留出处. Guava是google公司开发的一款Java类库扩展工具包,内含了丰富的API,涵盖了集合.缓存.并发.I/O等多个方面.使用这些API一方面 ...

  5. ASP.NET Core 6框架揭秘实例演示[22]:如何承载你的后台服务[补充]

    借助 .NET提供的服务承载(Hosting)系统,我们可以将一个或者多个长时间运行的后台服务寄宿或者承载我们创建的应用中.任何需要在后台长时间运行的操作都可以定义成标准化的服务并利用该系统来承载,A ...

  6. OSPF协议原理及配置4-邻接关系的建立和LSDB同步

    OSPF协议原理及配置4-邻接关系的建立和LSDB同步   进入ExStart状态后,广播和NBMA型网络要等待4倍的Hello时间,确定DR和BDR.然后建立邻接关系,并交互链路状态通告,以使用LS ...

  7. web自动化之selenium(六)利用坐标点定位

    这是通过第三发库实现对元素的定位,因为在无法定位元素的时候,只能通过外部来定位,此时就可以使用pyautogui模块,操作鼠标,模拟人进行操作 # 使用注意事项,不要过于的依赖它 1.使用时需要在通过 ...

  8. k8s原来这么简单(一)核心组件与工作原理

     k8s官方文档:https://kubernetes.io/zh/docs/home/ 前提 掌握容器技术:Docker,Containerd等 K8S优势 使用简单,少量人/小团队可以轻松维护大型 ...

  9. [转载]详解ssh端口转发(二)

    关于使用ssh portforwarding来进行FQ的操作,网络上已经有很多很好的文章,我在这里只是画两个图解释一下. 首先要记住一件事情就是: SSH 端口转发自然需要 SSH 连接,而 SSH ...

  10. 如何解析EML(邮件)格式的文件以及一款小巧的EML邮件阅读工具

    在理解EML格式的时候,先回顾一下历史,这样有助于理解邮件的格式,比如邮件传输时为何会有多种编码方式.此外,理解EML格式也有助于理解HTTP协议. 历史溯源 由于历史原因,我们目前看到的大部分的网络 ...