Nestable是基于Bootstrap的一个可拖拽的树结构表现插件。

下面粗略的介绍一下它的用法,只作为学习参考,如有不合适之处,请各位凑合看。

下图是我在现在系统中用到的Nestable,对系统模块排序。

1.首先是需要引入的文件

  • bootstrap.min.css Bootstrap的CSS文件
  • font-awesome.min.css 这个是Bootstrap的一个图标和字体的插件,Nestable应该用了它的一些图标,如果不引入这个文件有可能图标不能显示出来。
  • ace.min.css 这个一直不知道是什么,没来得及查阅资料,有知道的请告知一下
  • jquery-2.0.3.min.js 这个不解释
  • bootstrap.min.js 同上
  • jquery.nestable.min.js 这是就是今天介绍的主体

以上文件我会统一放在附件里面

2.下面是一个示例

HTML:

Html代码  
  1. <div class="dd">
  2. <ol class="dd-list">
  3. <li class="dd-item" data-id="1">
  4. <div class="dd-handle">Item 1</div>
  5. </li>
  6. <li class="dd-item" data-id="2">
  7. <div class="dd-handle">Item 2</div>
  8. </li>
  9. <li class="dd-item" data-id="3">
  10. <div class="dd-handle">Item 3</div>
  11. <ol class="dd-list">
  12. <li class="dd-item" data-id="4">
  13. <div class="dd-handle">Item 4</div>
  14. </li>
  15. <li class="dd-item" data-id="5">
  16. <div class="dd-handle">Item 5</div>
  17. </li>
  18. </ol>
  19. </li>
  20. </ol>
  21. </div>

在head标签内加入

Js代码  
  1. <script type="text/javascript">
  2. jQuery(function() {
  3. $('.dd').nestable();
  4. });
  5. </script>

3.事件Events

当重新排序后触发

Js代码  
  1. $('.dd').on('change', function() {
  2. /* on change event */
  3. });

4.方法Methods

将页面显示的树结构序列化

Js代码  
  1. $('.dd').nestable('serialize');

按开头的例子序列化返回的JSON数据应该是

Json代码  
  1. [{"id":1},{"id":2},{"id":3,"children":[{"id":4},{"id":5}]}]
Js代码  
  1. $('.dd').nestable('expandAll');//展开所有节点
Js代码  
  1. $('.dd').nestable('collapseAll');//折叠所有节点

5.配置Configuration

Js代码  
  1. $('.dd').nestable({ /* config options */ });

可配置项:

  • maxDepth 树节点层次(默认5)
  • group 允许在列表之间拖动的组ID(默认0)
  • listNodeName 创建树结构的的HTML标签(默认'ol')
  • itemNodeName  创建树结构节点的HTML标签(默认'li')
  • rootClass 根节点的class属性名称(默认'dd')
  • listClass 所有节点的class属性名称(默认'dd-list')
  • itemClass 树结构叶子节点class名称(默认'dd-item')
  • dragClass
  • handleClass
  • collapsedClass
  • placeClass
  • emptyClass
  • expandBtnHTML
  • collapseBtnHTML

转载于:https://www.cnblogs.com/telwanggs/p/7667025.html

Bootstrap学习笔记之Nestable可拖拽树结构相关推荐

  1. Bootstrap学习笔记01【快速入门、栅格布局】

    Java后端 学习路线 笔记汇总表[黑马程序员] Bootstrap学习笔记01[快速入门.栅格布局][day01] Bootstrap学习笔记02[全局CSS样式.组件和插件.案例_黑马旅游网][d ...

  2. Bootstrap学习笔记-布局

    Bootstrap学习笔记-布局 默认是响应式布局,就是你在改变页面的时候也不会出现乱的现象. <html> <head> <meta charset="utf ...

  3. Bootstrap学习笔记02【全局CSS样式、组件和插件、案例_黑马旅游网_首页】

    Java后端 学习路线 笔记汇总表[黑马程序员] Bootstrap学习笔记01[快速入门.栅格布局][day01] Bootstrap学习笔记02[全局CSS样式.组件和插件.案例_黑马旅游网][d ...

  4. Bootstrap学习笔记

    Bootstrap学习笔记 Bootstrap介绍 Bootstrap,来自 Twitter,是目前很受欢迎的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的,它简洁灵 ...

  5. bootstrap学习笔记一: bootstrap初认识,hello bootstrap(下)

    这一篇主要是补上源码,开始之前请先回顾:bootstrap学习笔记一: bootstrap初认识,hello bootstrap(上) 首先,我们的页面要求, lang,charset等就不用说了,老 ...

  6. Bootstrap学习笔记——导航条、分页导航

    1 导航条 导航条(navbar)比航(nav)复杂很多:导航条(navbar)中有一个背景色.而且导航条可以是纯链接(类似导航),也可以是表单,还有就是表单和导航一起结合等多种形式. 1.1 基础导 ...

  7. Bootstrap学习笔记系列1-------Bootstrap网格系统

    目录 Bootstrap网格系统 学习笔记 简单网格 偏移列 嵌套列 列排序 Bootstrap网格系统 学习笔记 简单网格 先上代码再解释 <!DOCTYPE html> <htm ...

  8. 笔记十三 :Egret拖拽对象与吸附对象(基于通用MVC框架)

    前言:拖拽对象是2D游戏中常用的一个功能,例如<植物大战僵尸>中种植植物的表现形式,拖拽植物卡片种植到相应的地点. 思路:在Egret中实现拖拽对象,需要用到TOUCH_MOVE事件的监听 ...

  9. BootStrap 学习笔记(一)

    BootStrap学习大纲: 1.css样式 布局容器:container 1)栅格系统 栅格系统就是BootStrap把一个div最多分成12列,其中主要的样式 col-md-数字 用的最多,其他( ...

最新文章

  1. HDU 4323 bk树 编辑距离
  2. Regarding @Inject annotation
  3. Tomcat集群和Session共享的配置方法
  4. 如何用c语言程序写一段英文字母,菜鸟求助,写一个随机输出26个英文字母的程序...
  5. 如果去掉数学前后的空格_数学家们是怎么玩趣味拼图游戏的?
  6. c语言main的性质,关于main()
  7. 计算机网络学习笔记(8. 报文交换与分组交换②)
  8. webmin安装_如何在Ubuntu 18.04上安装Webmin
  9. 计算机网络自顶向下方法第6章-链路层和局域网.1
  10. 工作十年,分享看过的优质 Java 书籍
  11. 为什么有些蓝牙耳机有底噪?高音质便宜实惠的蓝牙耳机分享
  12. SATA,SAS,SSD 读写性能测试结果
  13. html文本框后面紧挨着按钮,HTMLbody标签中的相关标签2
  14. 20元充电宝 身边的炸弹?选购留意电芯
  15. predict函数 R_R工程化(1) Rest API 之plumber包
  16. linux文本界面发邮件,柴少鹏的官方网站-linux发送邮件内容变成了tcmime.xxxx.xxxx.xxxx.bin的附件形式...
  17. Linux find命令 | 菜鸟教程
  18. SCT2650STER,可以实现低成本升降压
  19. 面向流行性疾病科普的用户问题理解与答案内容组织
  20. 李彦宏Vs周鸿祎:管理风格、领导准则之完全解剖

热门文章

  1. 金税盘怎么安装在电脑上_金税盘怎么安装,电脑重装后怎样安装金税盘税控开票软件?...
  2. java 空的构造函数_用javassist创建空的构造函数(java)不能上班
  3. 微信小程序自带地图_微信小程序之map地图
  4. neo4j python_Python 操作 Neo4j 数据库!
  5. 06.Qt菜单栏工具栏学习(一)
  6. nginx基础概念(100%)之keepalive
  7. 内核同步机制-信号量(semaphore)
  8. 苹果x有android文件夹,iPhone没有文件管理器这点,却让安卓手机羡慕!
  9. 百度知道回答html代码,html - JavaScript面试题:页面编码和被请求的资源编码 ,如果不一致,如何处理?百度上搜到一个答案,不知道是否正确?...
  10. java随机安排座位表程序_java – 为长凳生成随机座位表的最有效算法?