EasyUI文档学习心得
概述
jQuery EasyUI 是一组基于jQuery 的UI 插件集合,它可以让开发者在几乎完全不需要CSS以及复杂的JS代码情况下完成美观且功能强大的Web界面。
本文主要说明一些如何利用EasyUI文档快速学习的心得。官网文档介绍的比较详细,也可以使用中文文档。
官网文档:
http://www.jeasyui.com/tutorial/index.php
http://www.jeasyui.com/documentation/index.php
中文官网文档:
http://www.jeasyui.net/tutorial/
各版本中文离线文档整合地址:
http://download.csdn.net/album/detail/343
为什么说几乎不需要CSS?
EasyUI中自带了各个组件的CSS样式,并且有多种主题可选。即使默认提供的几种主题不能满足需要,也可以使用官方的主题编辑器进行修改。官方主题编辑器地址:
http://www.jeasyui.com/themebuilder/index.php
浏览器兼容性如何?
支持所有主流浏览器,支持H5,支持扩展。在1.3.5版本后自带了jQuery2.x,所以如果需要支持低版本IE浏览器请使用1.3.5之前版本。
比较重要的组件
EasyUI对自己的组件已有分类:Base(基础)、Layout(布局)、Menu and Button(菜单和按钮)、Form(表单)、Windows(窗口)、DataGrid and Tree(表格和树)、Extension(扩展)。
快速学习的话,可以直接从具体的分类里直接看。如果不想要书写CSS的话,应从Layout开始看,特别是Layout中的Layout部分(它确实是这么分类的)。Base里面包含提示框、进度条等常用组件。
个人使用最多的是DataGrid and Tree部分。
学习EasyUI有哪些条件
必要条件是需要知道一些HTML的标签、基础知识。最好是有JS和jQuery的基础。
本文大部分内容是基于有JS和jQuery基础的。
入门示例
本文主要介绍文档学习,所以入门我就贴一段HTML代码,效果是实现一个可拖拽的对话框。这个示例没有使用自定义的CSS和JS。
<!DOCTYPE html>
<html>
<head>
<title>jQuery Easy UI</title>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<link rel="stylesheet" type="text/css" href="easyui/themes/default/easyui.css" />
<link rel="stylesheet" type="text/css" href="easyui/themes/icon.css" />
</head>
<body>
<div class="easyui-dialog" style="width:500px;height:250px"
data-options="title:'My Dialog',collapsible:true,iconCls:'icon-ok'">
Hello World!
</div>
<script type="text/javascript" src="easyui/jquery.min.js"></script>
<script type="text/javascript" src="easyui/jquery.easyui.min.js"></script>
<script type="text/javascript" src="easyui/locale/easyui-lang-zh_CN.js" ></script>
</body>
</html>
属性、事件、方法
文档首页率先说明了属性、事件、方法。因为EasyUI每个组件几乎都有这三个东西,并且API也是通过这三个东西展示的。开篇介绍里需要记住的,调用方法的语法:
$('selector').plugin('method', parameter);
开篇还介绍了如果添加扩展方法,比如为dialog组件添加一个移动的方法:
$.extend($.fn.dialog.methods, {
mymove: function(jq, newposition){
return jq.each(function(){
$(this).dialog('move', newposition);
});
}
});
调用时:
$('#dd').dialog('mymove', {
left: 200,
top: 100
});
EasyUI中的继承
EasyUI存在继承,在每个组件的开始都会先介绍其继承关系。比如combo组件:
扩展自$.fn.validatebox.defaults。使用$.fn.combo.defaults重写默认值对象。
那么知道这个继承关系有什么用?在某些时候需要这个组件的某些属性、事件、方法,但是文档上却查不到,这里你可以试试从其继承链向上查。
比如datagrid,继承于panel,我想给datagrid设置标题、高度、宽度,但是在datagrid文档中没找到这些属性,这时可以去panel组件文档上找,由于继承的关系,这些属性也是可用的。
缺点
EasyUI一直在以版本更新的方式修正自身的缺点,并且在现在的互联网环境仍然存活,但是有些问题不可避免。
EasyUI闭源,商业版付费,这导致如果核心出现bug难以调试。而且异步直接重写了jQuery的错误处理方法,导致全局ajaxSetup不可用。
论坛不活跃,有问题可能难以靠别人或者资料解决。
总结
EasyUI个人觉得快速开发小型应用以及企业内部软件系统还是比较合适的。因为其闭源(可维护性、安全性差)、过程化的代码结构,开发大型应用上估计不是很合适。
以后如果有新的心得会继续在此补充。不过现在工作中其实已经用不到EasyUI了,也不知道其以后发展会如何,但是当初使用的时候真的用的很舒服,遇到bug的时候又十分蛋疼。在此我还是希望其越来越好。
EasyUI文档学习心得的更多相关文章
- Spring文档学习
Spring文档学习 参考Spring Framework Documentation学习 1. IoC 容器 1.1 容器实例化 <beans> <import resource= ...
- Cassandra1.2文档学习解读计划——为自己鼓劲
最近想深入研究一下Cassandra,而Cassandra没有中文文档,仅有的一些参考书都是0.7/0.6版本的.因此有个计划,一边学习文档(地址:http://www.datastax.com/do ...
- 《MATLAB从入门到放弃》二维曲线和图形绘制基础(二):使用Help文档学习line、plot、plotyy、subplot、hold绘图函数
目录: » plot 最常用的二维曲线绘图函数 > 帮助文档 > 基本使用语法 > 线条的样式.符号和颜色调整 > 图形属性调整 > 使用图形句柄进行设置 » ...
- 这可能是最详细的 iOS 学习入门指南(含书目/文档/学习资料)
1 零基础小白如何进行 iOS 系统学习 首先,学习目标要明确: 其次,有了目标,要培养兴趣,经常给自己一些正面的反馈,比如对自己的进步进行鼓励,在前期小步快走: 再次,学技术最重要的一点就是多动手. ...
- 通过程序校验xml文档学习笔记
校验xml文档,可以通过程序来校验,利用一段js代码即可. 各行代码的含义已经写出,运行这个html文件,检验如下xml代码: 结果如下: 如果xml文档出现错误: 结果如下: 其中,obj.asyn ...
- Nodejs v4.x.0API文档学习(2)Assert断言测试模块
文档参考地址:https://nodejs.org/dist/latest-v4.x/docs/api/ Assert(断言) assert模块提供了一组简单的断言测试方法,可以拥有测试不变量.该模块 ...
- Nodejs v4.x.0API文档学习(1)简介
文档参考地址:https://nodejs.org/dist/latest-v4.x/docs/api/ 简介 下面是用nodejs编写的一个web服务的例子,返回"Hello World& ...
- linux 内存-文档学习
ptmalloc http://www.malloc.de/en/ tcmalloc https://github.com/gperftools/gperftools jcmalloc http:// ...
- <文档学习>AirSim/using_car.md Choosing Your Vehicle: Car or Multirotor
如何在AirSim中使用汽车 默认情况下,AirSim中使用的车型为多转子multirotor. 如果你想使用汽车,那么只需在你的settings.json(https://github.com/Mi ...
随机推荐
- Linux所有者和组
组 添加组 groupadd 组名 查看所有组 cat /etc/group 添加成员useradd -g 组名 用户名 查看成员 cat /etc/passwd 查看用户权限 ls -l d rw ...
- 用Eclipse运行Android版APP(PhoneGap)时出现:Unable to execute dex: Multiple dex files define
这两天遇到点小问题,做个记录: 症状:运行,调试时都报:Unable to execute dex: Multiple dex files define错误,发布后的APP安装到手机后一运行,就提示: ...
- ThreadPoolExecutor
ThreadPoolExecutor机制 一.概述 1.ThreadPoolExecutor作为java.util.concurrent包对外提供基础实现,以内部线程池的形式对外提供管理任务执行,线程 ...
- [转]android开发之字节顺序
原文在此 android上C++程序为小端字节顺序,和windows上一样. 而android上的JAVA程序则使用的是大端字节顺序. 用NDK和java SDK 做android程序时发现的问题,记 ...
- [Tip] 如何在BeyondCompare中忽略不重要的区别.
在使用BeyondCompare时,有时需要忽略一些不重要的区别,下面的链接教你如何通过定义语法元素来实现这个功能. http://www.scootersoftware.com/support.ph ...
- SkipList 跳表
1.定义描述 跳跃列表(也称跳表)是一种随机化数据结构,基于并联的链表,其效率可比拟于二叉查找树(对于大多数操作需要O(log n)平均时间). 基本上,跳跃列表是对有序的链表增加 ...
- win10下LPT并口打印失败和POS打印机的钱箱不能打开,win10的坑
最近在弄一个收银软件,因为使用到了触摸屏,该PC出厂安装的是老掉牙的XP.SSD固态硬盘,装XP实在是太浪费了.然后尝试了WIN7发现不能激活,然后试win8.1发现比较满意终于觉得配得上触摸屏了,但 ...
- 安卓开发笔记——关于图片的三级缓存策略(内存LruCache+磁盘DiskLruCache+网络Volley)
在开发安卓应用中避免不了要使用到网络图片,获取网络图片很简单,但是需要付出一定的代价——流量.对于少数的图片而言问题不大,但如果手机应用中包含大量的图片,这势必会耗费用户的一定流量,如果我们不加以处理 ...
- VMware下OS X Yosemite安装VMsvga2桌面黑屏解决方法
VMsvga2目前并不支持Yosemite,如果安装的话进入桌面除了顶部菜单,全部黑屏.通过顶部菜单打开的大部分应用都会立刻奔溃关闭.参考以下步骤可以解决问题: 1.下载VMsvga2的uninsta ...
- 从头学Qt Quick(2)-- QML语法从一个简单的例子说起
在上一篇文章中,我们对QtQuick做了简单的介绍,体验了使用QML语言构建一个UI的便捷.这里我们简要介绍一下QML的语法. QML将界面分成一些更小的元素,这些元素可以组成一个组件,QML语言描述 ...