ztree调整节点间距及一般使用

news2024/11/24 1:23:06

1.基本介绍

树形结构菜单的功能属于非常常见的一种菜单交互,本人先后也使用过多种树形结构的插件,有 ztree、xloadtree、treeview、datagrid-tree 等等等等。近期有个功能恰好又要使用tree菜单了,由于可自行选择使用的组件,所以略加思索的就选择了ztree,第一因为它的功能和特性确实较为丰富,第二因为使用过它很多次了。

距离上次使用ztree的功能已经有许多年了,现在再来看它的效果,总是感觉菜单之间的间距比较的小,所以本次分享一下将它的间距给调大一些,同时也稍微的做一个功能稍微全面的简单示例,先看下间距改造后的示例图如下:

1、改造前后对比.jpg

(改造前后对比)

2.示例分享

本次示例的分享主要是包含两个例子,节点间距和树的操作两部分,前者主要是通过增加一些css样式的形式将节点间的间距调大,使得看上去更加美观;后者是近期使用到的一些交互性的功能实现,分为:全选/取消、反选、展开、折叠。

2.1 节点间距

节点间距示例是调整了菜单节点之间的距离,整体感觉更加美观了,但是也存在瑕疵,就是一些有弟弟节点的菜单的虚线看起来没有连续,不过我个人觉得这个细节可以忽略,毕竟这点瑕疵不是很明显,不过也有属性可以控制不显示这些节点的虚线。

2.2 树的操作

树的操作涵盖了一些简单的树形菜单的功能交互,主要有:全选/取消、反选、展开、折叠、搜索等几个功能,以下是对于几点功能的描述:

(1)全选/取消:当有节点被选中时触发所有节点的清除选中;当无选中节点时的点击将选中所有节点;

(2)反选:当有节点被选中时触发清除当前所选节点,而后选择其它未选中的节点;当无节点选中时将全选节点;当全部节点被选中时将全部取消节点选中;

(3)展开:点击后展开全部的菜单节点;

(4)折叠:点击后折叠全部的菜单节点;

2、4个功能一览.gif

(4个功能一览.gif图,由于对gif图片生成水印导致图片像素有些丢失)

(5)数据筛选:可在输入框中输入节点关键字,超过500毫秒自动触发搜索,同时将搜索匹配的关键字;

3、关键字筛选.gif

(4个功能一览.gif图,关键字筛选)

3.其它说明

(1)ztree的属性结构可支持两种模式,分别是标准模式和简单模式,其中简单模式是平面的,一层数据的结构;标准模式是需要递归层级节点和子节点的树形结构;所以可以按需求进行节点类型的选择,如果不愿意自己递归可交给组件,由它来进行转换;

(2)关于节点的树形结构本站也有专门实现对应的功能,将一层数据的结构转换为递归子层的节点嵌套,可参考《Bootstrap实践之Java递归转换treeview结构数据》、《Bootstrap实践之JavaScrpt递归转换treeview结构数据》,分别使用Java和JavaScript实现;

参考地址1:Bootstrap实践之Java递归转换treeview结构数据

参考地址2:Bootstrap实践之JavaScrpt递归转换treeview结构数据

(3)搜索功能是ztree自带的功能,本次示例将需要的js增加至jquery.ztree.all.min.js,如果可以的话,做成后端搜索的,同时再搭配汉字转拼音进行首字母拼音检索,同时输入字母高亮文本,比如输入“yz”时高亮“叶子”两个汉字;

(4)示例中有个瑕疵就是tree节点之间在某些场景下连接线没有连接上,水平有限不在此处深究(这个瑕疵我觉得可以接受),示例文件中也包含有上述gif的原图,相关下载可转至原文:

ztree的最新实现欢迎来到陈冬冬的个人经验分享平台icon-default.png?t=N7T8https://www.chendd.cn/blog/article/1719670780056129538.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1161957.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

简单工厂模式、工厂方法模式、抽象工厂模式

简介 将实例化代码提取出来,放到一个类中统一管理和维护,达到和主项目依赖关系的解耦,从而提高项目的扩展性和维护性。 工厂模式将复杂的对象创建工作隐藏起来,而仅仅暴露出一个接口供客户使用,具体的创建工作由工厂管…

Axie Infinity 超级任务远超预期,和 YGG 一起探索 Web3 增长新方式!

参与超级任务的实际人数是预期人数的两倍。 超级任务将新玩家引入 Web3 游戏领域,并向他们介绍可以为其玩家旅程提供支持的社区。 Axie Infinity 超级任务旨在向新手和 Axie Classic 老 玩家介绍「Axie Infinity|起源」这款游戏。 整个活动共吸引了 4,…

Luminar Neo Mac/Windows中文版:引领AI图像编辑的革命性时代

Luminar Neo运用先进的AI技术,能够自动化地完成许多繁琐的编辑任务,如色彩校正、噪点消除、人脸识别等。这不仅大大提高了工作效率,同时也降低了对专业知识和技能的要求。无论你是专业摄影师,还是摄影爱好者,甚至是一个…

python写爱心代码【爱心代码编程python可复制粘贴】

python写爱心代码【爱心代码编程python可复制粘贴】 python程序代码:heart.py from math import cos, pi import numpy as np import cv2 import os, glob class HeartSignal: def __init__(self, curve"heart", title"Love U", frame_n…

程序员用接单平台靠谱吗?浅谈一下十年程序员的看法

后疫情时代,经济下行,这年头社会上就业也越来越卷了,程序员人才市场也日趋饱和。不少人嗅到危险气息,已经开始谋求出路了! 咱们程序员的话,“兼职”"接单"也不是个新鲜的话题了。养家糊口也好、财富自由也罢…

优优嗨聚集团:医保新政来袭,乙类OTC、保健品或将退出医保舞台,影响几何?

近日,国家医保局发布征求意见稿,拟将乙类OTC(非处方药)和保健品从医保目录中移除。这一政策一旦实施,无疑将对广大参保人员和相关企业产生深远影响。本文将为您详细解析这一政策可能带来的影响,以及如何应对…

19.3 Boost Asio 多线程通信

多线程服务依赖于两个通用函数,首先boost::bind提供了一个高效的、简单的方法来创建函数对象和函数对象适配器,它的主要功能是提供了一种将函数和它的参数绑定到一起的方法,这种方法可以将具有参数的成员函数、普通函数以及函数对象转化为不带…

日常笔记工具搭档(Typora、Snipaste)

一、Typora 啥也不说了直接上图 Markdown语法 Typora免费版 提取码:av01 二维码: 1)页面展示 2)主题 3)偏好设置 4)Markdown语法设置偏好 5)编辑器 6)系统 二、Snipaste Snipaste…

中国电子云-隐私计算-云原生安全可信计算,物理-硬件-系统-云产品-云平台,数据安全防护

目录 联邦学习的架构思想 中国电子云-隐私计算-云原生安全 可信计算,物理-硬件-系统-云产品-云平台,数据安全防护 全栈国产信创的意义 1. 提升科技创新能力 2. 推动经济发展 3. 加强信息安全与自主可控 全栈国产信创的重要领域 1. 人工智能 2.…

Nginx简介,Nginx搭载负载均衡以及Nginx部署前端项目

目录 一. Nginx简介 Nginx的优点 二. Nginx搭载负载均衡 2.1 Nginx安装 2.1.1 安装依赖 2.1.2 解压nginx安装包 2.1.3 安装nginx 2.1.4 启动nginx服务 2.2 tomcat负载均衡 2.3 Nginx配置 三. Nginx前端部署 一. Nginx简介 NGINX(读作:engi…

阿里云2023年双十一活动各云产品活动内容及优惠政策汇总

阿里云2023双十一活动各云产品有哪些新购和续费优惠政策?小编看了一下阿里云2023年的双十一活动,活动分为主会场和8个云产品分会场,涉及的云产品涵盖了云服务器、云数据库、云存储、云网络、大数据Al、云原生、云安全等几乎所有阿里云产品&am…

技能get-ps抠颜色一样的图

公司要插个小图片,从网上down下来的图片是不过是jpg的,背景不透明,这时候可以使用ps工具把这种同一颜色的内容扣下来。 操作步骤: 选择-色彩范围,然后用取样器取颜色,再调节拉条选取颜色范围,最…

客户收到样品后“消失”,怎么破?

对于大部分外贸人来说,谈客户几乎不是一次性谈成的,而是要进行多次的沟通。在沟通过程中难免会遇到各种问题,一些小问题容易解决,但有一些棘手的问题却不知该如何下手。 比如: ①客户收到样品后就“消失”&#xff0c…

某数据库为提升搜索效率,对某一整型字段构建二叉搜索树(BST)

声明:下面的方法不一定正确,个人学习过程中所写,并未做大量测试,仅供参考,应该有BUG,暂时不改了。 描述:某数据库为提升搜索效率,对某一整型字段构建二叉搜索树(BST)。每个结点包含…

07、vue : 无法加载文件 C:\Users\JH\AppData\Roaming\npm\vue.ps1,因为在此系统上禁止运行脚本。

目录 问题解决: 问题 vue : 无法加载文件 C:\Users\JH\AppData\Roaming\npm\vue.ps1,因为在此系统上禁止运行脚本。 在使用 VSCode 时,创建 Vue 项目报的错 创建不了 Vue 项目 解决: 因为在此系统上禁止运行该脚本&#xff0…

[ 云计算 | AWS 实践 ] 使用 Java 列出存储桶中的所有 AWS S3 对象

本文收录于【#云计算入门与实践 - AWS】专栏中,收录 AWS 入门与实践相关博文。 本文同步于个人公众号:【云计算洞察】 更多关于云计算技术内容敬请关注:CSDN【#云计算入门与实践 - AWS】专栏。 本系列已更新博文: [ 云计算 | …

利用工业视频AI分析,能否消除企业生产安全隐患?

讲个去年11月的案例,某家工厂发生火灾,直接导致38人死亡和2人受伤。然后在今年2月,某家新能源汽车公司发生机械伤害事故,导致1人死亡。4月,一家船厂发生生产安全事故,造成7人死亡和5人受伤。5月&#xff0c…

5.4 可靠传输的工作原理

思维导图: 5.4 可靠传输的工作原理 前言概述 TCP与IP层的关系:TCP负责发送报文段,而IP层负责传送这些报文段。IP层仅提供“尽最大努力服务”,本质上是不可靠的传输。TCP的责任:为了弥补IP层的不可靠性,TC…

springboot的请求与响应

一,简单参数 Get请求:只需要在postman中的Params参数与方法中的形参一致就可以Post请求与Get方法一致只需要在 如果参数名不一致--通过RequestParam中的value属性执行请求参数名 RequestParam(name "name",required false) //表示name参数不是…

安装VMware后无VMnet1和VMnet8网卡

问题描述 通过进入 按键盘(WINR),输入cmd,进入管理员页面 输入ipconfig,没有vmnet1和vmnet8 进入电脑--->更改适配器(也无vmnet1和vmnet8) 一,解决方法1 直接还原vmware网络设置。 还原成…