简介

jQuery EasyUI是一组基于jQuery的UI插件集合体,而jQuery EasyUI的目标就是帮助web开发者更轻松的打造出功能丰富并且美观的UI界面。开发者不需要编写复杂的javascript,也不需要对css样式有深入的了解,开发者需要了解的只有一些简单的html标签。

jQuery EasyUI是基于JQuery的一个前台ui界面的插件,功能相对没extjs强大,但页面也是相当好看的,同时页面支持各种themes以满足使用者对于页面不同风格的喜好。一些功能也足够开发者使用,相对于extjs更轻量。

目录结构

 

demo文件夹:一些示例,(正式项目中删除)

locale:一些不同语言的文件,其实是对easyui的扩展。(只须保留你想用的语言相对应的文件)

plugins:easyui提供的各个功能的文件。(使用方式二加载必须保留,方式一加载可以删除)

src :各个插件的源文件,不是全部,其实有些功能不是开源的,是商业授权,因此没有源文件。(可以删除)

themes:主题,就是css文件和要用到的图标文件,里边提供5种风格。(可以只保留要使用的风格,并且具体到一个风格里,又分为两部分:easyui.css和其它所有css。easyui.css是其它所有css的合并后结果,在不同的加载方式中只会用到一部分。)

easyloader.js:暂且称之为加载器文件。在使用方式一加载也不会被使用。

jquery.easyui.min.js:easyui的主文件。它是plugins下所有文件合并后的结果,因些它在使用方式一加载必须保留,方式二加载不会使用到,可以删除。

jquery.min.js:jquery文件,easyui是基于jquery的,因此是必须的。

其它的是一些授权文件和更新日志之类的,就不说了。

两种引用加载方式

 

1:饿汉式加载

<link rel="stylesheet" type="text/css" href="easyui/themes/default/easyui.css">

<script type="text/javascript" src="easyui/locale/easyui-lang-zh_CN.js"></script>

<link rel="stylesheet" type="text/css" href="easyui/themes/icon.css">

<script type="text/javascript" src="easyui/jquery.min.js"></script>

<script type="text/javascript" src="easyui/jquery.easyui.min.js"></script>

这种也是最常用的方式。这种方式会加载easyui提供的所有功能。

2:懒汉式加载

<link rel="stylesheet" type="text/css" href="easyui/themes/icon.css">

<script type="text/javascript" src="easyui/jquery.min.js"></script>

<script type="text/javascript" src="easyui/jquery.easyloader.js"></script>

这种方式就相对比较懒,只会在使用特定功能的时候才会加载相对应的plugins下的js和风格里css文件,而其它不使用的功能对应的js和css永远不会被下载。而easyloader.js就是负责用于加载各个插件的。

不同加载方式产生问题

 

风格

方式1的加载我们通过引用 themes/default/easyui.css来指定,引用不同风格下的easyui.css来使用不同的风格,但是方式2我们并没用指定风格?如何指定风格?

不指定时,默认是引用default风格下的样式,就会去下载该风格下的样式。如果你使用方式2时且没有指定风格,不存在default风格就会出现问题。

当然我们可以在页面加载后通过

easyloader.theme = "gray";

来指定风格。

语言

同样的对于语言文件,对于方式1我们可以直接在页面引用jquery.easyui.min.js的后面引用。

<script type="text/javascript" src="easyui/locale/easyui-lang-zh_CN.js"></script>

但是这对于方式2的加载,这是不起作用的。

因些语言文件其实是对各个插件默认配置的修改,当插件都还没有加载时,语言文件对它的修改当然是不会起作用的。

因此我们可以通过下面

easyloader.locale = "zh_CN";

来指定使用何种语言。

两种渲染方式

 

1:javascript方式

<input id="cc" style="width:200px" />

$('#cc').combobox({

url: ...,

required: true,

valueField: 'id',

textField: 'text'

});

2:html标记方式

<input id="cc" class="easyui-combobox" name="dept"

data-options="valueField:'id',textField:'text',url:'get_data.php'" />

注:具网上传言,html标记方式相对JS加载方式而言,(在IE)渲染性能差些。

这个我还没感觉到,只是个人觉得JS加载方式相对html标记方式要更加灵活,你可以在DOM加载完毕之后再去渲染控件,也可以在使用到某个控件时,再去渲染。

由于EasyUI是基于jQuery的,而上面2种方式使用到了jQuery的选择器。根据给定ID去匹配元素比根据给定的class去匹配元素性能更佳。

所以选择哪一种,你懂的。。。。。。

说说IE兼容性问题

EasyUI本身控件功能是很不错,效果也漂亮,使用方式也简单,但是对于IE不同版本的兼容性不是很好,性能问题尤其突出,所以,如果你是用IE浏览器,那么就不建议使用EasyUI。

如果你是在项目中使用EasyUI,又要兼容IE8及以下浏览器。那么可以搭配

EasyUI 1.3.1+EasyUI 1.3.2+jQuery 1.8.x

来使用(本人在实际项目中使用过,期间发现较少问题,总的情况还算稳定,就是页面控件渲染是硬伤,网上针对部分EasyUI控件的优化办法也有一些,聊胜于无,总的效果不是很理想)。

注:jQuery Easy UI从1.3.3到现在的最新版本1.3.4都是基于jQuery2.0的,而jQuery2.0是不支持IE6、7、8的了,所以jQueryEasyUI1.3.3后的版本都不支持IE6、7、8。如果想继续兼容IE8以前的版本,只能使用jQueryEasyUI1.3.2或以前的版本了。另外jQuery1.9对IE8兼容性不是很好,所以不建议选择。

插件列表如下:

分类

插件

Base(基础)

  • Parser 解析器
  • Easyloader 加载器
  • Draggable 可拖动
  • Droppable 可放置
  • Resizable 可调整尺寸
  • Pagination 分页
  • Searchbox 搜索框
  • Progressbar 进度条
  • Tooltip 提示框

Layout(布局)

  • Panel 面板
  • Tabs 标签页/选项卡
  • Accordion 折叠面板
  • Layout 布局

Menu(菜单)与 Button(按钮)

  • Menu 菜单
  • Linkbutton 链接按钮
  • Menubutton 菜单按钮
  • Splitbutton 分割按钮

Form(表单)

  • Form 表单
  • Validatebox 验证框
  • Combo 组合
  • Combobox 组合框
  • Combotree 组合树
  • Combogrid 组合网格
  • Numberbox 数字框
  • Datebox 日期框
  • Datetimebox 日期时间框
  • Calendar 日历
  • Spinner 微调器
  • Numberspinner 数值微调器
  • Timespinner 时间微调器
  • Slider 滑块

Window(窗口)

  • Window 窗口
  • Dialog 对话框
  • Messager 消息框

DataGrid(数据网格)与 Tree(树)

  • Datagrid 数据网格
  • Propertygrid 属性网格
  • Tree 树
  • Treegrid 树形网格

以及几个常用的扩展插件

1 autocomplete自动完成控件,类似百度搜索框
2 lookup控件,这是一个比较中国化的东西,企业应用中使用的频率很高
3 daterange这个是国外网站上找到了,很炫的一款控件,略做了一些修改并引入

对于EasyUI几个常用控件的源码分析,学习和优化,可以去这个网址看看。

http://www.easyui.info/

转载于:https://www.cnblogs.com/birdwawe/p/4062066.html

easyui 初体验相关推荐

  1. 苹果电脑安装python3密码_mac系统安装Python3初体验

    前沿 对于iOS开发不要随便拆卸系统自带的Python,因为有很多 library 还是使用 Python2.7. 1 安装Xcode 1.1 App Store 搜索Xcode 并安装 1.2 安装 ...

  2. MapReduce编程初体验

    需求:在给定的文本文件中统计输出每一个单词出现的总次数 第一步: 准备一个aaa.txt文本文档 第二步: 在文本文档中随便写入一些测试数据,这里我写入的是 hello,world,hadoop he ...

  3. 小程序 缩放_缩放流星应用程序的初体验

    小程序 缩放 by Elie Steinbock 埃莉·斯坦博克(Elie Steinbock) 缩放流星应用程序的初体验 (First Experiences Scaling a Meteor Ap ...

  4. wxWidgets刚開始学习的人导引(3)——wxWidgets应用程序初体验

    wxWidgets刚開始学习的人导引全文件夹   PDF版及附件下载 1 前言 2 下载.安装wxWidgets 3 wxWidgets应用程序初体验 4 wxWidgets学习资料及利用方法指导 5 ...

  5. 用鸿蒙跑了个 “hello world”!鸿蒙开发初体验

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 来源 | https://my.oschina.net/u ...

  6. Windows Embedded Standard开发初体验(二)

    支持Silverlight的Windows Embedded Standard 好了,完成安装之后,我们就可以来做Windows Embedded Standard的第一个操作系统镜像了.在开始菜单中 ...

  7. 深度探索Hyperledger技术与应用之超级账本初体验(附部署代码)

    2019独角兽企业重金招聘Python工程师标准>>> 本章零基础地介绍了如何快速体验超级账本搭建的区块链网络,我们先绕过了比较复杂的初始化配置,用官方提供的fabric-sampl ...

  8. Spring环境搭建,IoC容器初体验~

    由于最近的任务是关于IoC配置文件格式的转换,所以需要从Spring的IoC容器开始学起,今天根据网上的介绍搭建了Spring环境,并对其IoC容器进行了初体验.文章中涉及到的软件以及推荐的一本关于S ...

  9. 来自新手Banana Pi香蕉派初体验

    2019独角兽企业重金招聘Python工程师标准>>> 一.前言 一段时间来对有强大的技术支持和完善的社区的Raspberry Pi很感兴趣,本想入一片学习学习,但转念一想Raspb ...

最新文章

  1. java执行器是什么_Java 并发编程:任务执行器 Executor 接口
  2. es6 方法的 name 属性
  3. 超干货议程发布 | 2021全球分布式云大会 · 上海站 重磅来袭
  4. 库克笑嘻嘻!苹果明年或将迎来继iPhone 6后第二次换机大潮
  5. 错误ImportError: 'No module named skimage.io'和ImportError: No module named google.protobuf.internal
  6. VMware 虚拟机运行卡慢的解决办法
  7. 如何将MDF文件转换为XLS文件?
  8. PTES渗透测试执行标准
  9. android系统存储空间不足怎么办,手机内存不足怎么办?手机内存不足如何清理?...
  10. java 大小写_java中如何进行大小写字母转换?
  11. 一文了解:微服务及其演进史
  12. asp.net 设计音乐网站
  13. verilog语言实现全加器
  14. (纪中)2417. Loan Repayment【数学】
  15. Linux树莓派开发——配置树莓派内核源码,内核编译,更换树莓派Linux内核
  16. 为什么黑客不攻击支付宝?
  17. FXTZ 1.10 小爱使用
  18. 解读5G标准:5G频率范围与频段
  19. 两步轻松搞定 编辑器上传图片尺寸过大 超出前台显示区域问题!
  20. 腾讯通rtx中心服务器,rtx腾讯通如何登录

热门文章

  1. 关于课程设计、毕业设计的一些总结与思考
  2. 从csv文件批量创建AD用户,带源码。
  3. 【收集】EJB3.0的各应用服务器提供的JNDI接口
  4. 学习笔记之Iframe
  5. 第二章 向量(a)接口与实现
  6. MySQL集群节点宕机,数据库脑裂!如何排障?
  7. UIApplication shared application用法总结
  8. JavaScript面向对象编程(1)-- 基础
  9. (转)我的座驾见谁灭谁!
  10. nodejs-函数路由