zoukankan      html  css  js  c++  java
  • JQuery EasyUI 结合ztrIee的后台页面开发

      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="100%;height:100% ;overflow:hidden;">'
                                +'<iframe src="'
                                +treeNode.url
                                +'" scrolling="auto" style="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 部分代码

     1 <body class="easyui-layout">
     2     <div data-options="region:'north',title:'北丐:洪七公',split:true" style="height:100px;"></div>
     3     <div data-options="region:'south',title:'南帝:一灯大师',split:true" style="height:100px;"></div>
     4     <div data-options="region:'east',iconCls:'icon-reload',title:'东邪:黄药师',split:true" style="100px;"></div>
     5     <div data-options="region:'west',title:'西毒:欧阳锋',split:true" style="250px;">
     6         <div id="aa"  data-options="fit:'true'" class="easyui-accordion">
     7             <div title="赵敏" data-options="iconCls:'icon-save'" >
     8                 <h3 style="color:#0099FF;">Accordion for jQuery</h3>
     9                 <p>Accordion is a part of easyui framework for jQuery. It lets you define your accordion component on web page more easily.</p>
    10             </div>
    11             <div title="大玉儿" data-options="iconCls:'icon-reload',selected:true" >
    12                 // ztree属性结构
    13                 <ul id="tree" class="ztree" style="230px; overflow:auto;"></ul>
    14             </div>
    15             <div title="婉容儿" >
    16                 who?
    17             </div>
    18         </div>
    19     </div>
    20     <div data-options="region:'center',title:'中神通:周伯通'">
    21         // tabs 面板
    22         <div id="tt" class="easyui-tabs" data-options="fit:true">
    23             <div title="小龙女"data-options="closable:true" ></div>
    24             <div title="沐剑屏" data-options="closable:true" ></div>
    25             <div title="阿珂" data-options="iconCls:'icon-reload',closable:true"></div>
    26         </div>
    27     </div>
    28     
    29     // menu菜单栏
    30     <div id="mm" class="easyui-menu" style="120px;">
    31         <div name="current">关闭当前选项卡</div>
    32         <div name="others">关闭其他选项卡</div>
    33         <div class="menu-sep"></div>
    34         <div data-options="iconCls:'icon-cancle'" name="all">关闭所有选项卡</div>
    35     </div>
    36 </body>

    以上

  • 相关阅读:
    nginx 安装ab小工具方法
    ab小工具的Failed requests多的问题
    linux webbench测试高并发方法
    html5 video获取实时播放进度的方法
    html5 video获取实时播放进度的方法
    下载网站上的视频的方法
    带宽的深入理解
    redis 清除minerd进程的方法
    php 500报错解决方案
    GIT和SVN之间的五个基本区别
  • 原文地址:https://www.cnblogs.com/maria-ld/p/7461186.html
Copyright © 2011-2022 走看看