jQuery EasyUI结合zTree树形结构制作web页面
时间:2019-04-01
本文章向大家介绍jQuery EasyUI结合zTree树形结构制作web页面,主要包括jQuery EasyUI结合zTree树形结构制作web页面使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
JQuery EasyUI 结合 zTree树形结构制作web页面.easyui用起来比较简单,很好的封装了jquery的部分功能,使用起来更加方便,但是从1.2.3版本以后,商业用途是需要付费的,zTree是国内的大牛们搞的一个jquery树形tree插件,感觉很好用,很强大,而且完全免费,API等做的也非常不错.推荐
easyui 是一个基于 jQuery 的框架,集成了各种用户界面插件。
easyui 提供建立现代化的具有交互性的 javascript 应用的必要的功能。
使用 easyui,您不需要写太多 javascript 代码,一般情况下您只需要使用一些 html 标记来定义用户界面。
HTML 网页的完整框架。
easyui 节省了开发产品的时间和规模。
easyui 非常简单,但是功能非常强大。
需要的导入以下几种js文件和样式表
easyui/themes/default/easyui.css
easyui/themes/icon.css
jquery-1.8.3.js
easyui/jquery.easyui.min.js
ztree/jquery.ztree.all-3.5.js(该文件包括core,exhide,exedit,excheck)
ztree/zTreeStyle.css
<script type="text/javascript"> // ztree菜单设置 var zTreeObj, setting = { view: { selectedMulti: false }, // 添加编辑设置:修改树节点名称/删除树节点 edit: { enable: true }, data: { simpleData: { enable: true } }, callback:{ onClick: zTreeOnClick } }; // 回调函数:单击事件 function zTreeOnClick(event, treeId, treeNode, clickFlag) { alert(treeNode.id + ", " + treeNode.name); var content = '<div style="width:100%;height:100% ;overflow:hidden;">' +'<iframe src="' +treeNode.url +'" scrolling="auto" style="width:100%;height:100%;border:0;"></iframe></div>'; if(treeNode.url != undefined && treeNode.url != ""){ // 当centre中是否存在名称为treeNode.name的tabs if($("#tt").tabs('exists',treeNode.name)){ $("#tt").tabs('select',treeNode.name); }else { $("#tt").tabs('add',{ title:treeNode.name, content:content, closable:true }) } }; event.preventDefault(); }; // 提供ztree树形菜单数据 zTreeNodes = [ {"id":1, "pId":0, "name":"海贼王"}, {"id":11, "pId":1, "name":"娜美", "url":"http://man.linuxde.net/"}, {"id":12, "pId":1, "name":"罗宾", "url":"http://www.baidu.com"}, {"id":13, "pId":1, "name":"汉库克", "url":"http://www.google.cn/"}, { "id":2, "pId":0, "name":"父节点 2", "open":true}, {"id":21,"pId":2, "name":"叶子节点 2-1"}, {"id":22, "pId":2, "name":"叶子节点 2-2"}, {"id":23,"pId":2, "name":"叶子节点 2-3"}, {"id":3, "pId":0, "name":"父节点 3", "open":true}, {"id":31, "pId":3, "name":"叶子节点 3-1"}, {"id":32, "pId":3, "name":"叶子节点 3-2"}, {"id":33, "pId":3, "name":"叶子节点 3-3"} ]; // 3.生成树形菜单 $(document).ready(function(){ zTreeObj = $.fn.zTree.init($("#tree"), setting, zTreeNodes); }); // 4.对象选项卡注册右击事件 $(document).ready(function(){ $("#tt").tabs({ onContextMenu:function(e,title,index){ // 阻止系统默认的右击事件 e.preventDefault(); $('#mm').menu('show', { left: e.pageX, top: e.pageY }); } }); }); // 获取所选取的面板对象 $(document).ready(function(){ $("#tt").tabs({ // 获取所选取的面板对象 onSelect : function(title,index ){ // 5. menu的单击事件绑定 $("#mm").menu({ onClick:function(item){ alert(item.name); // 当点击关闭当前选项卡时 if(item.name==='current'){ $('#tt').tabs('close',title); // 当点击关闭其他选项卡时 }else if(item.name === 'others'){ var tabs = $('#tt').tabs('tabs'); $(tabs).each(function(){ if($(this).panel('options').title != '消息中心' && $(this).panel('options').title != title){ $('#tt').tabs('close',$(this).panel('options').title); } }); // 当点击关闭所有选项卡时 }else if(item.name === 'all'){ var tabs = $('#tt').tabs('tabs'); $(tabs).each(function(){ if($(this).panel('options').title != '消息中心'){ $('#tt').tabs('close',$(this).panel('options').title); } }); } } }); } }) }) </script>
相应的htm 部分代码
<body class="easyui-layout"> <div data-options="region:'north',title:'北丐:洪七公',split:true" style="height:100px;"></div> <div data-options="region:'south',title:'南帝:一灯大师',split:true" style="height:100px;"></div> <div data-options="region:'east',iconCls:'icon-reload',title:'东邪:黄药师',split:true" style="width:100px;"></div> <div data-options="region:'west',title:'西毒:欧阳锋',split:true" style="width:250px;"> <div id="aa" data-options="fit:'true'" class="easyui-accordion"> <div title="赵敏" data-options="iconCls:'icon-save'" > <h3 style="color:#0099FF;">Accordion for jQuery</h3> <p>Accordion is a part of easyui framework for jQuery. It lets you define your accordion component on web page more easily.</p> </div> <div title="大玉儿" data-options="iconCls:'icon-reload',selected:true" > // ztree属性结构 <ul id="tree" class="ztree" style="width:230px; overflow:auto;"></ul> </div> <div title="婉容儿" > who? </div> </div> </div> <div data-options="region:'center',title:'中神通:周伯通'"> // tabs 面板 <div id="tt" class="easyui-tabs" data-options="fit:true"> <div title="小龙女"data-options="closable:true" ></div> <div title="沐剑屏" data-options="closable:true" ></div> <div title="阿珂" data-options="iconCls:'icon-reload',closable:true"></div> </div> </div> // menu菜单栏 <div id="mm" class="easyui-menu" style="width:120px;"> <div name="current">关闭当前选项卡</div> <div name="others">关闭其他选项卡</div> <div class="menu-sep"></div> <div data-options="iconCls:'icon-cancle'" name="all">关闭所有选项卡</div> </div> </body>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- 黑客可以利用传感器数据来破解手机密码
- spring-boot 速成(3) actuator
- 利用sharding-jdbc分库分表
- 利用sharding-jdbc分库分表
- 协议森林17 我和你的悄悄话 (SSL/TLS协议)
- spring-boot 速成(1) helloworld
- spring-boot 速成(1) helloworld
- 协议森林16 小美的桌号(DHCP协议)
- struts2(一)之初识struts2
- AI聊天机器人备受青睐 专家呼吁少卖萌
- CQRS框架:AxonFramework 之 Hello World
- Kubernetes的服务网格(第4部分):通过流量切换持续部署
- TortoiseGit安装与配置
- mongodb 速成笔记
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 语雀自动同步到hexo博客
- 推荐 3 款超好用的 Docker 图形化管理工具
- python标准库之glob介绍
- Python 为什么只需一条语句“a,b=b,a”,就能直接交换两个变量?
- 使用List中的remove方法遇到的坑,不信你没有踩过!
- python opencv 图像尺寸变换
- OpenCv保存图像
- 机器学习|KNN
- docker 查看容器日志
- consul配置ACL
- CentOS7.5更改python版本后及yum不能用的解决办法,非编译!
- nginx 配置websocket
- PostgreSQL10分区表性能研究报告
- linux文件目录管理基本命令总结
- Linux中的硬链接与软链接?