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字符串对象charAt方法入门实例(用于取得指定位置的字符)
Oct 17 Javascript
深入理解JavaScript系列(22):S.O.L.I.D五大原则之依赖倒置原则DIP详解
Mar 05 Javascript
jquery实现无刷新验证码的简单实例
May 19 Javascript
Node.js + Redis Sorted Set实现任务队列
Sep 19 Javascript
jQuery和JavaScript节点插入元素的方法对比
Nov 18 Javascript
Bootstrap实现圆角、圆形头像和响应式图片
Dec 14 Javascript
Angularjs实现上传图片预览功能
Sep 01 Javascript
浅谈Vue服务端渲染框架Nuxt的那些事
Dec 21 Javascript
小程序封装路由文件和路由方法(5种全解析)
May 26 Javascript
微信小程序 bindtap 传参的实例代码
Feb 21 Javascript
javascript之Object.assign()的痛点分析
Mar 03 Javascript
输入框跟随文字内容适配宽实现示例
Aug 14 Javascript
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
PHP 采集获取指定网址的内容
2010/01/05 PHP
如何使用Linux的Crontab定时执行PHP脚本的方法
2011/12/19 PHP
PHP处理SQL脚本文件导入到MySQL的代码实例
2014/03/17 PHP
prototype 源码中文说明之 prototype.js
2006/09/22 Javascript
8个超棒的学习 jQuery 的网站 推荐收藏
2011/04/02 Javascript
jQuery实现下拉框选择图片功能实例
2015/08/08 Javascript
js倒计时抢购实例
2015/12/20 Javascript
详解Javascript模板引擎mustache.js
2016/01/20 Javascript
React Native之TextInput组件解析示例
2017/08/22 Javascript
浅谈AngularJS中$http服务的简单用法
2018/05/15 Javascript
微信小程序实现上传图片功能
2018/05/28 Javascript
怎样使你的 JavaScript 代码简单易读(推荐)
2019/04/16 Javascript
JS字符串与二进制的相互转化实例代码详解
2019/06/28 Javascript
Vue组件间通信 Vuex的用法解析
2019/08/05 Javascript
vue props 一次传多个值实例
2020/07/22 Javascript
浅谈JavaScript中this的指向更改
2020/07/28 Javascript
[37:45]2014 DOTA2国际邀请赛中国区预选赛5.21 DT VS Orenda
2014/05/22 DOTA
Python错误提示:[Errno 24] Too many open files的分析与解决
2017/02/16 Python
谈谈Python中的while循环语句
2019/03/10 Python
ubuntu 18.04搭建python环境(pycharm+anaconda)
2019/06/14 Python
解决Djang2.0.1中的reverse导入失败的问题
2019/08/16 Python
如何给Python代码进行加密
2020/01/10 Python
Python MySQL 日期时间格式化作为参数的操作
2020/03/02 Python
详解使用Python写一个向数据库填充数据的小工具(推荐)
2020/09/11 Python
python3.9.1环境安装的方法(图文)
2021/02/02 Python
纯CSS实现聊天框小尖角、气泡效果
2014/04/04 HTML / CSS
HTML5 图片预加载的示例代码
2020/03/25 HTML / CSS
劳动之星获奖感言
2014/02/01 职场文书
大学生军训感想
2014/02/16 职场文书
教学个人的自我评价分享
2014/02/16 职场文书
土地转让协议书范本
2014/04/15 职场文书
学习雷锋月活动总结
2014/07/03 职场文书
小学五年级语文上册教学计划
2015/01/22 职场文书
失职检讨书大全
2015/01/26 职场文书
网上祭英烈活动总结
2015/02/04 职场文书
解决ubuntu安装软件时,status-code=409报错的问题
2022/12/24 Servers