Bootstrap树形菜单插件TreeView.js使用方法详解


Posted in Javascript onNovember 01, 2016

jQuery多级列表树插件基于Twitter Bootstrap,以简单和优雅的方式来显示一些继承树结构,如视图树、列表树等等。

实用Bootstrap树形菜单特效插件Bootstrap Tree View,非常不错的Bootstrap插件,现在很多Bootstrap制作的页面都需要此功能,此插件需要Bootstrap3版本以及jQuery 2.0极以上版本支持,支持众多参数自定义功能,颜色、背景色、图标、链接等,还是很不错的。

效果图:

Bootstrap树形菜单插件TreeView.js使用方法详解

具体使用方法:

插件依赖

Bootstrap v3.0.3
jQuery v2.0.3

以上两个外部依赖文件已经经过测试可以正常使用,其他版本的Bootstrap需要另行测试。该插件不支持bootstrap 2。

使用方法

首先要在页面中引入依赖文件和 bootstrap-treeview.js文件。

<!-- Required Stylesheets -->
<link href="./css/bootstrap.css" rel="stylesheet">
 
<!-- Required Javascript -->
<script src="./js/jquery.js"></script>
<script src="./js/bootstrap-treeview.js"></script>

HTML结构

可以使用任何HTML DOM元素来作为该列表树的容器:
<div id="tree"></div>                   

调用插件

该列表树插件最基本的调用方法如下:

function getTree() {
 // Some logic to retrieve, or generate tree structure
 return data;
}
 
$('#tree').treeview({data: getTree()});

数据结构

为了创建树的继承结构,需要为该列表树插件提供一个嵌套结构的js对象。例如:

var tree = [
 {
 text: "Parent 1",
 nodes: [
  {
  text: "Child 1",
  nodes: [
   {
   text: "Grandchild 1"
   },
   {
   text: "Grandchild 2"
   }
  ]
  },
  {
  text: "Child 2"
  }
 ]
 },
 {
 text: "Parent 2"
 },
 {
 text: "Parent 3"
 },
 {
 text: "Parent 4"
 },
 {
 text: "Parent 5"
 }
];

最简单的树结构可以只有一个节点,使用一个带text属性的js对象来实现即可:

{
 text: "Node 1"
}

如果你需要自定义更多的内容,可以参考下面:

{
 text: "Node 1",
 icon: "glyphicon glyphicon-stop",
 selectedIcon: "glyphicon glyphicon-stop",
 color: "#000000",
 backColor: "#FFFFFF",
 href: "#node-1",
 selectable: true,
 state: {
 checked: true,
 disabled: true,
 expanded: true,
 selected: true
 },
 tags: ['available'],
 nodes: [
 {},
 ...
 ]
}

全局参数

参数可以定制treeview的默认外观和行为。参数使用一个对象来在插件初始化时传入:

// Example: initializing the treeview
// expanded to 5 levels
// with a background color of green
$('#tree').treeview({
 data: data,   // data is not optional
 levels: 5,
 backColor: 'green'
});

可用方法

你可以通过两种方式来调用方法:
1、插件包装器:插件的包装器可以作为访问底层方法的代理。
$('#tree').treeview('methodName', args) 
多个参数必须使用数组对象来传入。

2、直接使用treeview:你可以通过下面两种方法中的一种来获取treeview对象实例。

//该方法返回一个treeview的对象实例
$('#tree').treeview(true)
 .methodName(args);
 
//对象实例也保存在DOM元素的data中,
//可以使用'treeview'的id来访问它。
$('#tree').data('treeview')
 .methodName(args);

如果大家还想深入学习,可以点击这里进行学习,再为大家附两个精彩的专题:Bootstrap学习教程 Bootstrap实战教程 Bootstrap插件使用教程

源码下载:http://xiazai.3water.com/201611/yuanma/bootstraptreeview(3water.com).rar

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript生成/解析dom的CDATA类型的字段的代码
Apr 22 Javascript
DOMAssitant最新版 DOMAssistant 2.5发布
Dec 25 Javascript
Jquery获得控件值的三种方法总结
Feb 13 Javascript
离开当前页面前使用js判断条件提示是否要离开页面
May 02 Javascript
简单理解vue中track-by属性
Oct 26 Javascript
VUE使用vuex解决模块间传值问题的方法
Jun 01 Javascript
iscroll-probe实现下拉刷新和下拉加载效果
Jun 28 Javascript
vue几个常用跨域处理方式介绍
Feb 07 Javascript
详解VUE中常用的几种import(模块、文件)引入方式
Jul 03 Javascript
JS中的防抖与节流及作用详解
Apr 01 Javascript
Node.js中出现未捕获异常的处理方法
Jun 29 Javascript
vue特效之翻牌动画
Apr 20 Vue.js
JS实现快速的导航下拉菜单动画效果附源码下载
Nov 01 #Javascript
AngularJS入门教程之数据绑定用法示例
Nov 01 #Javascript
jQuery动态生成Bootstrap表格
Nov 01 #Javascript
AngularJs入门教程之环境搭建+创建应用示例
Nov 01 #Javascript
jQuery双向列表选择器select版
Nov 01 #Javascript
jQuery双向列表选择器DIV模拟版
Nov 01 #Javascript
JS button按钮实现submit按钮提交效果
Nov 01 #Javascript
You might like
ECshop 迁移到 PHP7版本时遇到的兼容性问题
2016/02/15 PHP
Ext.MessageBox工具类简介
2009/12/10 Javascript
javascript offsetX与layerX区别
2010/03/12 Javascript
javascript中的对象创建 实例附注释
2011/02/08 Javascript
中文路径导致unitpngfix.js不正常的解决方法
2013/06/26 Javascript
javascript实现根据3原色制作颜色选择器的方法
2015/07/17 Javascript
JavaScript事件类型中焦点、鼠标和滚轮事件详解
2016/01/25 Javascript
前端js文件合并的三种方式推荐
2016/05/19 Javascript
AngularJs bootstrap搭载前台框架——js控制部分
2016/09/01 Javascript
老生常谈jquery中detach()和remove()的区别
2017/03/02 Javascript
微信小程序 弹窗自定义实例代码
2017/03/08 Javascript
Express进阶之log4js实用入门指南
2018/02/10 Javascript
vue实现简单loading进度条
2018/06/06 Javascript
vue项目上传Github预览的实现示例
2018/11/06 Javascript
vue-router命名路由和编程式路由传参讲解
2019/01/19 Javascript
JS事件循环机制event loop宏任务微任务原理解析
2020/08/04 Javascript
Vue.js桌面端自定义滚动条组件之美化滚动条VScroll
2020/12/01 Vue.js
为什么推荐使用JSX开发Vue3
2020/12/28 Vue.js
在Ubuntu系统下安装使用Python的GUI工具wxPython
2016/02/18 Python
利用python求相邻数的方法示例
2017/08/18 Python
Python tkinter实现的图片移动碰撞动画效果【附源码下载】
2018/01/04 Python
Python延时操作实现方法示例
2018/08/14 Python
python数据化运营的重要意义
2019/11/25 Python
Python测试Kafka集群(pykafka)实例
2019/12/23 Python
python+opencv实现车牌定位功能(实例代码)
2019/12/24 Python
css3实现二维码扫描特效的示例
2020/10/29 HTML / CSS
淘宝客服专员岗位职责
2014/04/11 职场文书
2014年教师节寄语
2014/08/11 职场文书
群众路线剖析材料怎么写
2014/10/09 职场文书
党风廉政建设调研报告
2015/01/01 职场文书
工会积极分子个人总结
2015/03/03 职场文书
班主任班级管理心得体会
2016/01/07 职场文书
JUnit5常用注解的使用
2021/07/02 Java/Android
SQL之各种join小结详细讲解
2021/08/04 MySQL
MySQL创建表操作命令分享
2022/03/25 MySQL
zabbix 代理服务器的部署与 zabbix-snmp 监控问题
2022/07/15 Servers