首页 > 代码库 > Jquery Easy UI初步学习(一)

Jquery Easy UI初步学习(一)

Easy UI 1.3.2

以前听说Easy UI很不错,当了一个dome,闲着没事就看了一下,也整理一下为了自己更好的记忆,也希望对象我这样小菜有帮助吧
先从后台管理的主页面开始,如要要做主页需要了解以下几项

data-options是jQuery Easyui 最近两个版本才加上的一个特殊属性。通过这个属性,我们可以对easyui组件的实例化可以完全写入到html中,例如:

<div class="easyui-dialog" style="width:400px;height:200px"    data-options="title:‘My Dialog‘,collapsible:true,iconCls:‘icon-ok‘,onOpen:function(){}"> dialog content.</div>

属性,事件,都可以直接写在data-options里面,这样就方便多了。

来自:http://easyui.btboys.com/the-use-of-easyui-data-options.html

 

Layout Panel 

名称 类型 说明 默认值
title string Layout panel 的标题文字。 null
region string 定义 layout panel 的位置,其值是下列之一:north、south、east、west、center。  
border boolean True 就显示 layout panel 的边框。 true
split boolean True 就显示拆分栏,用户可以用它改变panel 的尺寸。 false
iconCls string 在panel 头部显示一个图标的CSS 类。 null
href string 从远程站点加载数据的 URL 。 null

然后找到EasyUi 中的Layout文件夹Full.html,打开代码如
<head>
    <meta charset="UTF-8">
    <title>Full Layout - jQuery EasyUI Demo</title>
    <link rel="stylesheet" type="text/css" href="../../themes/default/easyui.css">
    <link rel="stylesheet" type="text/css" href="../../themes/icon.css">
    <link rel="stylesheet" type="text/css" href="../demo.css">
    <script type="text/javascript" src="../../jquery-1.8.0.min.js"></script>
    <script type="text/javascript" src="../../jquery.easyui.min.js"></script>
</head>
<body class="easyui-layout">
    <div data-options="region:‘north‘,border:false" style="height:60px;background:#B3DFDA;padding:10px">north region</div>
    <div data-options="region:‘west‘,split:true,title:‘West‘" style="width:150px;padding:10px;">west content</div>
    <div data-options="region:‘east‘,split:true,collapsed:true,title:‘east‘" style="width:100px;padding:10px;">east region</div>
    <div data-options="region:‘south‘,split:true,border:false" style="height:50px;background:#A9FACD;padding:10px;">south region</div>
    <div data-options="region:‘center‘,title:‘Center‘"></div>
</body>
</html>
看到以上就知道怎么去做了,直接copy就行了。
之后我想在west中添加菜单栏,实现单击左边的菜单栏在center中显示指定页面,也就是往center中添加tabs
首先了解一下tabs的属性:
名称 类型 说明 默认值
title string 该Tab的标题文字。 null
content string 该Tab面板内容 null
href string 一个URL,加载远程内容以填充Tab面板。 null
cache boolean 当true时,缓存Tab面板,当href 属性设置后有效 true
icon string 增加一个CSS class图标以显示在Tab面板的标题旁。 null
closable boolean 当true时,该Tab面板将显示可关闭按钮,点击能关闭该Tab面板。 false
selected boolean 当true时,该Tab面板将被选中。 false
width int 面板宽度,自动列宽。 null
height int 面板高度,自动列高。 null
tabs的方法:
                 1)resize:重绘该Tab容器的布局。
                 2)add:新增加一个Tab面板,该选项参数是一个配置对象,看Tab面板属性可获取更多信息。
                 3)close:关闭该Tab面板,标题参数显示你要关闭的对象。
                 4)select:选择一个Tab面板。
                 5)exists:如果该Tab面板存在即显示。
demo中代码如下:
    <div class="easyui-tabs" style="width:700px;height:250px">
        <div title="About" style="padding:10px">
            <p style="font-size:14px">jQuery EasyUI framework help you build your web page easily.</p>
            <ul>
                <li>easyui is a collection of user-interface plugin based on jQuery.</li>
                <li>complete framework for HTML5 web page.</li>
                <li>easyui save your time and scales while developing your products.</li>
                <li>easyui is very easy but powerful.</li>
            </ul>
        </div>
        <div title="My Documents" style="padding:10px">
            <ul class="easyui-tree" data-options="url:‘../tabs/tree_data1.json‘,animate:true"></ul>
        </div>
        <div title="Help" data-options="iconCls:‘icon-help‘,closable:true" style="padding:10px">
            This is the help content.
        </div>
    </div>
步骤也不难,指定tabs的容器(设置class="easyui-tabs"),之后只要在该容器下放一个div就是一个tab,当然只是下面一级div有效
例如在help后面加上一个test
运行效果如下
接下来就可以通过点击菜单栏创建tabs,在center显示
// 增加一个新的 tab panel
$(‘#tt‘).tabs(‘add‘, {
      title: ‘New Tab‘,
      content: ‘Tab Body‘,
      closable: true
});
加好菜单栏,就可以完成了,效果如下
 
最后有个疑问:就是Layout Panel的herf属性,我试着给了一个网址,却一直在load...,询问下
 
整个代码如下:
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Full Layout - jQuery EasyUI Demo</title>
    <link href="../../Scripts/jquery-easyui-1.3.2/themes/default/easyui.css" rel="stylesheet"
        type="text/css" />
    <link href="../../Scripts/jquery-easyui-1.3.2/themes/icon.css" rel="stylesheet" type="text/css" />
    <script src="../../Scripts/jquery-1.5.1.min.js" type="text/javascript"></script>
    <script src="../../Scripts/jquery-easyui-1.3.2/jquery.easyui.min.js" type="text/javascript"></script>
    <style type="text/css">
        .panel-header,.layout-expand
        {
            background: linear-gradient(to bottom,#abd5c0 0,#abd5c0 100%);
        }
        .layout-expand .panel-body
        {
            background: linear-gradient(to bottom,#abd5c0 0,#abd5c0 100%);
        }
        .panel-header,.panel-body
        {
            border-color: #95B8E7;
        }
        li{ list-style-type: none;}
        #menubar {
            width: 100%;
        }
        #menubar p
        {
            width: 100%;
            height: 35px;
            background-color: green;
            display: inline-block;
            line-height: 35px;
            padding: 0;
            margin: 0;
            text-align: center;
            cursor: pointer;
            }
        .lab_sidebar {
            display: none;
        }
    </style>
    <script type="text/javascript">
        $(function () {
            $("#menubar").find("p").click(function () {
                $(this).next().toggle("lab_sidebar");

            });
        });
        function createFrame(url) {
            var s = <iframe name="mainFrame" scrolling="auto" frameborder="0"  src="http://www.mamicode.com/ + url + " style="width:100%;height:99%;"></iframe>;
            return s;
        }
        //添加选项
        function addTab(subtitle, url) {
            if (!$(#tabs).tabs(exists, subtitle)) {
                $(#tabs).tabs(add, {
                    title: subtitle,//标题
                    content: createFrame(url),
                    closable: true
                });
            } else {
                $(#tabs).tabs(select, subtitle);
            }
        }
        // 增加一个新的 tab panel
        function addDiv() {
            $(#tabs).tabs(add, {
                title: New Tab,
                content: Tab Body,
                closable: true
            });
        }
    </script>
</head>
<body class="easyui-layout">
    <div data-options="region:‘north‘,border:false" style="height: 60px; padding: 10px;background: linear-gradient(to bottom,#c4dabc 0,#abd5c0 100%);">
        System Admin
    </div>
    <div data-options="region:‘west‘,split:true,iconCls:‘edit‘" style="width: 150px; background-color:#abd5c0">
        <div id="menubar">
            <p>用户管理</p>
            <ul>
                <li><input type="button" value="添加Tabs" onclick="addDiv()"/></li>
                <li>新增用户</li>
                <li>新增用户</li>
                <li><a href="javascript:void(0)" onclick="addTab(this.innerText,‘http://www.baidu.com/‘)">百度一下</a></li>
            </ul>
            <p>团队管理</p>
            <ul>
                <li>用户管理</li>
                <li>新增用户</li>
                <li>新增用户</li>
                <li><a href="javascript:void(0)" onclick="addTab(this.innerText,‘http://www.cnblogs.com/‘)">博客园</a></li>
            </ul>
            <p>系统管理</p>
            <ul>
                <li>用户管理</li>
                <li>新增用户</li>
                <li>新增用户</li>
                <li>新增用户</li>
            </ul>
        </div>
    </div>
    <div data-options="region:‘east‘,split:true,collapsed:true,title:‘east‘" style="width: 100px;
        padding: 10px;">
        east region</div>
    <div data-options="region:‘south‘,border:false" style="height: 50px; background: #abd5c0;
        padding: 10px;">
        south region</div>
    <div data-options="region:‘center‘,border:false">
        <div class="easyui-tabs" id="tabs" fit="true">
            <div title="欢迎使用" style="padding: 20px; overflow: hidden;" id="home">
                <h1>Welcome to jQuery UI!</h1>
            </div>
        </div>
    </div>
</body>
</html>
View Code

 

来自为知笔记(Wiz)