EasyUI 个人记录

Easy UI

Easy UI的认识:

​ jQuery EasyUI (基于jQuery的UI用户界面插件集合)

​ easyui是属于前端框架,易于快速的构建页面

Easy UI怎么去使用:

​ 1.下载easyui

​ 2.引入easyUI压缩包,文件(搭建easyUI环境)

        <!-- easyui的样式主题文件 -->
		<link rel="stylesheet" type="text/css" href="easyui/themes/default/easyui.css">
		<!-- easyui的系统图标-->   
		<link rel="stylesheet" type="text/css" href="easyui/themes/icon.css">
		<!-- easyui依赖的jquery库-->   
		<script type="text/javascript" src="easyui/jquery.min.js"></script>
		<!-- easyui的插件库-->      
		<script type="text/javascript" src="easyui/jquery.easyui.min.js"></script>
		<!-- easyui的汉化包 -->
		<script type="text/javascript" src="easyui/locale/easyui-lang-zh_CN.js">			</script>
Easy UI怎么创建组件(掌握):
创建组件的方式:
	1.HTML标签方式创建:
            <div class="easyUI-组件名字"> //标签里面class最重要
                内容随便写    
            </div>
	2.JavaScript方式创建 (通过JS代码来创建)
    		<div id="p1" style="padding:100px">
             </div>
			$('#p1').panel({
            	title:'标题'  (写入easyUI属性)
            })
Easy UI底层原理:

​ essyUI组件创建原理:

​ 平时写的class=“easyui-panel” -------说白了就是底层始终会去调用panel方法来创建

​ 底层通过 $.parser.auto=true,调用parse方法,循环页面的组件,找到对应的easyUI-panel

​ 找到之后,调用panel({})创建组件,panel底层组装html。

​ $.parse方法= {

​ panel……

​ }

Easy UI各个常用组件的使用(掌握):

LinkButton: 按钮

panel:面板

tree: 树形菜单

menu:菜单

LinkButton组件:
	/*
	    LinkButton属性说明:
        iconCls:图标
        toggle:为true时允许用户切换其状态是被选中还是没有被选中
        可以结合group来使用,在一组里面只能选择一个来使用
        
        plain:简洁的效果
        iconAlign:按钮图标位置。
        data-options:可以设置组件的属性
        disable:禁用按钮    为true时禁止使用
        .hasClass('l-btn-disabled') : 判断是否有禁用的效果 
        group: 分组 可以结合toggle来使用,在一组里面只能选择一个来使用
        */
		<a id="btn" href="#" class="easyui-linkbutton"
        data-options="iconCls:'icon-search'">easyui</a>   //按钮
panel组件:

注意:panel面板并不是每个属性都可以修改。 一个组件创建完之后,就不要去改变属性的值,如果 创建完之后,改变组件属性的值,就会出现我们不想要的效果。

结论,组件在定义的时候就把属性设置好

    /*
		title:标题
		padding: 内容距离边框距离
		iconCls:图标
		collapsible:定义为ture是显示可折叠按钮,false就是不可折叠
         minimizable boolean 定义是否显示最小化按钮。
		maximizable boolean 定义是否显示最大化按钮。
         closable:true为关闭按钮   false就没有关闭按钮
         tools:引用工具  比如引用add和save图标
         fit:自适应(当设置为true的时候面板大小将自适应父容器。)
		loadingMessage:(加载中……) 在加载远程数据的时候在面板内显示一条消息。 
		href:加载文件内容
		.attr(): 设置属性
    */
        <div id="p" style="padding:10px;">    
            <p>panel content.</p>    
            <p>panel content.</p>    
        </div>    

        $('#p').panel({    
          width:500,    
          height:150,    
          title: 'My Panel',    
          tools: [{    
            iconCls:'icon-add',    
            handler:function(){alert('new')}    
          },{    
            iconCls:'icon-save',    
            handler:function(){alert('save')}    
          }]    
        });   

Easy UI组件三要素(掌握):每个组件都有这三要素
1.属性:

​ 描述组件的信息,比如title width height…

1.每一个组件创建出来的时候,都有默认的属性

​ $.fn.panel.defaults

​ 一般都不会去修改组件的默认属性,如果要改,就在组件里面自己定义组件的属性.

        $("#p1").attr("title","面板头") //这样修改是无效的。只能修改body里面的东西 修改头无效并且毫无意义
        <div ud="p1"   class="easyui-panel">
            <p> xxxxxxxxxx </p>    
        </div>

2.属性在创建的时候,就应该定义好,不要在创建完之后再去修改属性

3.属性的定义方式

a. 直接作为一个标签定义 (属性名=“属性值”)

比如

b.直接再data-options里面定义进行指定属性 data-options tools:[{…},{…}]这种多个属性就不要写在外面就写在 data-options里面

c.标签和data-options结合起来一起使用

注意:如果data-options里面tools里面有多个属性值的话只能在data-options里面设置

<div class="easyui-panel" style="width:300px;height:200px"
		title="My Panel" data-options="iconCls:'icon-ok',tools:[
				{
					iconCls:'icon-add',
					handler:function(){alert('add')}
				},{
					iconCls:'icon-edit',
					handler:function(){alert('edit')}
				}]">
</div>

d.直接在js创建组件的时候使用。

            $("#p2").panel{
                tools:'创建组件',
                closable:true
            }
2.方法:

2.1 调用方法:

$("#p1").plugin(‘methodName’,‘参数’)

$("#id").panel(‘open’);

$("#id").panel(‘clise’);

$("#id").panel(‘refresh’);
​ 2.2 创建组件:

$("#id").panel( { 参数 } );

/*
open 在'forceOpen'参数设置为true的时候,打开面板时将跳过'onBeforeOpen'回调函数。 (打开)
close 在'forceClose'参数设置为true的时候,关闭面板时将跳过'onBeforeClose'回调函数。(关闭)
clear none 清除面板内容。(清除) 
refresh href 刷新面板来装载远程数据。如果'href'属性有了新配置,它将重写旧的'href'属性。 
代码示例:  (刷新)
*/

// 打开面板且刷新其内容。
$('#pp').panel('open').panel('refresh');
// 刷新一个新的URL内容$('#pp').panel('open').panel('refresh','new_content.php');

3.事件:

树状菜单: tree

        <ul id="tt" class="easyui-tree">   
            <li>   
                <span>Folder</span>   
                <ul>   
                    <li>   
                        <span>Sub Folder 1</span>   
                        <ul>   
                            <li>   
                                <span><a href="#">File 11</a></span>   
                            </li>   
                            <li>   
                                <span>File 12</span>   
                            </li>   
                            <li>   
                                <span>File 13</span>   
                            </li>   
                        </ul>   
                    </li>   
                    <li>   
                        <span>File 2</span>   
                    </li>   
                    <li>   
                        <span>File 3</span>   
                    </li>   
                </ul>   
            </li>   
            <li>   
                <span>File21</span>   
            </li>   
        </ul>  
	
/*
每个节点都具备以下属性:	
            id:节点ID,对加载远程数据很重要。
            text:显示节点文本。
            state:节点状态,'open' 或 'closed',默认:'open'。如果为'closed'的时候,将不自动展开该节点。
            checked:表示该节点是否被选中。
            attributes: 被添加到节点的自定义属性。
            children: 一个节点数组声明了若干节点。
*/



//示例:
                    [
            {
                "id": 1,
                "text": "组织机构",
                "iconCls": "icon-save",
                "children": [{
                    "id": 11,
                    "text": "部门管理",
                    "iconCls": "icon-ok",
                    "url": "department.action"
                },{
                    "id": 12,
                    "text": "员工管理",
                    "iconCls": "icon-ok",
                    "url": "employee.action"
                }]
            },
            {
                "id": 2,
                "text": "系统管理",
                "iconCls": "icon-save",
                "children": [{
                    "id": 13,
                    "text": "权限管理",
                    "iconCls": "icon-ok",
                    "url": "permission.action"
                },{
                    "id": 14,
                    "text": "角色管理",
                    "iconCls": "icon-ok",
                    "url": "role.action"
                }]
            } //因为这里是默认post提交 没有后台的话就要修改为get提交才行
        ]  	//method:检索数据的HTTP方法。(POST / GET) 默认为post 
  		 $('#tt').tree({
             	method:'get'    //这里要修改为Get才会显示
           		onClick: function(node){
                alert(node.text);  // 在用户点击的时候提示
                }
            });


/*
            onClick:点击事件
            onDblClick: 双击事件	
 */
            $('#tt').tree({
           		 onClick: function(node){
                alert(node.text);  // 在用户点击的时候提示
                }
            });




		//onContextMenu  (e, node): 在右键点击节点的时候触发,右键点击节点并显示快捷菜单
		//	e: 相当于是event事件对象  node:节点
            $('#tt').tree({
            onContextMenu: function(e, node){
                e.preventDefault(); //  .preventDefault()阻止浏览器默认事件
                // 查找节点
                $('#tt').tree('select', node.target);
                // 显示快捷菜单
                $('#mm').menu('show', {
                    left: e.pageX,
                    top: e.pageY
                });
            }
        });

        //右键菜单定义如下:  menu(菜单)
        <div id="mm" class="easyui-menu" style="width:120px;">
            <div onclick="append()" data-options="iconCls:'icon-add'">追加</div>
            <div onclick="remove()" data-options="iconCls:'icon-remove'">移除</div>
        </div>


右键菜单:
        <script>
        $(function() {
            //contextmenu : 右键菜单(上下文菜单)
            $(document).on('contextmenu', function(event) {
                //event 事件对象: 描述了事件发生时所有的信息,包含事件名,事件源,触发事件的坐标.

                event.preventDefault();//阻止浏览器默认事件

                $("#mm").menu("show", {
                    left : event.pageX,
                    top : event.pageY
                });
            });	
        });
        </script>
        </head>
        <body>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值