最近由于项目需要,对js UI作了一些简单的了解和使用,有自己的一些想法,在这里留个记录。
当然,我的专注点在管理系统的范围内,所以互联网网站及其他形态的应用这里不提及,所以jQuery UI和Bootstrap类的js库不会提及。
一、JavaScript UI选型
由于公司里一般只有“美工”,没有前端人员,所以一般是程序员兼职前端,所以一般会找一个好用且功能全的js UI框架(当然,还有免费),这样页面基本就不用花费太多功夫了。
我们了解到的有大概这么几个js UI 框架:EXT js(http://www.sencha.com/),jQuery MiniUI(http://www.miniui.com/),jQuery EasyUI(http://www.jeasyui.com/index.php),还有博客园谢略的jQuery LigerUI(http://www.cnblogs.com/leoxie2011/)。
EXT js
优点:发展时间长,组件和功能丰富,效果炫,使用的人多,有专业团队维护。
缺点:由于组件太多、功能太丰富,导致臃肿,体积大,响应速度慢,收费。
jQuery MiniUI
优点:基于jQuery的轻量级UI,组件较丰富,性能与效果都还不错,有专业团队开发与维护,国产。
缺点:收费,收费较高;使用的人不多。
jQuery EasyUI
优点:轻量,组件较为丰富,效果还可以,版本已经趋于稳定,官方有专人维护与技术支持。
缺点:部分组件功能不太丰富,有少量兼容性问题,性能有些小小问题。
jQuery LigerUI
优点:轻量级,组件比较丰富,开源。
缺点:效果稍欠缺,文档不太完善,个人开发,版本升级与维护比较慢。
最终我们选定jQuery EasyUI,虽然功能不太全,但是在轻量级UI里,它和MiniUI、LigerUI各方面其实都在同一级别,抛弃MiniUI的主要原因是收费,据说价格还不低……我们怕不缴费,就没有技术支持,会有问题,而且貌似用MiniUI的群体不大(估计也和收费有关);LigerUI其实也不错,但是UI效果还稍微有些欠缺,而且是作者一个人维护,虽然开源,但是各类用户和爱好者提交的问题好像也不少,作者一个人恐怕很难应付得过来。
接下来再详细说说jQuery EasyUI,经过好几年的发展,现在的稳定版本已经是1.3.3了,共有30多个组件,基本涵盖了普通应用系统里会用到的所有组件,文档和Demo都还比较全面和丰富,提供相应的扩展接口,方便扩展;而且更新也较为频繁,国内用户还算不少,而且也有官方论坛,版主回复也非常认真和及时,一般问题都能给搞定,不过现在已收费,好在不算太贵($449)。
适用场景:需要快速开发对UI和性能要求不是特别高的的中小型应用系统。
二、接下来再吐槽一下使用过程中遇到的问题吧
1.布局Layout 也算EasyUI的一大特色功能了,可是有些功能缺失,比如某layout在收起来后,title不能显示,收起和展开动作稍显不平滑(这其实是EasyUI框架的问题了,所有组件都有同样问题);
2.DataGrid挺好用,但是大数据量和编辑状态的性能比较差,特别是IE下;
3.Tabs里的content和href方式各有问题,用content方法打开iframe,会有性能问题,且类似dialog和messager的窗口不能在框架页弹出,只能在iframe页面范围内;href方式和其他第三方js插件貌似有兼容性问题,而且href是以资源的形式,将href的页面引用至父页面,这需要在对页面元素命名时,要全局考虑,整个站点不能重名;
4.部分浏览器下渲染效果过慢,有时候会看到还没渲染完成的页面效果,体验不太好;
5.文档不太详细,部分组件的依赖关系描述得不清楚,部分方法的使用方法也省略,用户在查完文档后,往往还需要看其他的demo才能明白;
6.ValidateBox有不少问题,老是在不该验证的时候去做验证,错误提示在页面边缘时会被挡住;
7.部分组件缺失,如:富文本编辑器;部分组件功能不够丰富,如:DateBox;
8.浏览器兼容性问题还有少量。
分享到:
相关推荐
标题中的“实用小工具:Java实体类对比、Json对比、字符串动态拼接等功能”涉及到的是在软件开发过程中常用的几个技术点,主要集中在Java后端和前端Vue.js的应用上。这里我们将详细探讨这些知识点: 1. **Java实体...
它们简化了开发者和设计师在色彩选择和布局调整上的工作,是Java开发过程中不可或缺的实用小工具。通过下载并使用"java取色、像素测量工具",你将能够提升你的开发体验,使工作变得更加得心应手。
Java文件比较工具是一种实用程序,它允许程序员或用户对比两个或多个文本文件或二进制文件的内容,找出它们之间的差异。这样的工具在软件开发、版本控制、代码审查以及数据比较等多个场景中非常有用。在Swing中开发...
3. 编码开发:使用Java等编程语言实现功能模块,如财务模块的保证金和收发存功能。 4. 技术评估:研究新技术,参与技术选型,并提供技术报告和建议。 5. 文档编写:撰写技术文档,包括设计文档和接口文档,促进团队...
《Java开发实战经典》是李兴华先生撰写的一本深入浅出的Java编程教程,旨在帮助初学者和有一定基础的开发者提升Java编程技能,并通过实战案例深入理解Java技术体系。这本书涵盖了许多重要的Java知识点,包括但不限于...
Java开发框架的研究主要集中在JEE环境下,探讨了多种用于构建Web服务和应用程序的框架,包括Structs、JavaServer Faces(JSF)以及Spring。这些框架的核心理念是基于Model-View-Controller(MVC)设计模式,它是一种...
总结来说,Java的UI皮肤Quaqua是一个强大的工具,它能够帮助开发者轻松地将Java Swing应用的界面升级为macOS风格,提高用户体验。通过简单的引入和配置,开发者可以快速地让自己的应用拥有现代、美观的界面,从而...
Java图片编辑工具是一种基于Java编程语言开发的软件应用,它为用户提供了一种便捷的方式来处理和编辑图像文件。这种工具通常包含一系列功能,如裁剪、旋转、调整亮度和对比度、添加滤镜效果等,使得用户可以对图像...
本文将深入探讨这些主题,并基于提供的文件名"Jar_henry"进行推测,这可能是一个包含了作者Henry收集的各种实用工具类和自定义UI实现的Java库。 ### 工具类(Utils) 工具类通常是一些静态方法集合,它们提供各种...
Java开发的打字软件是一款基于Java编程语言构建的应用程序,旨在帮助用户提高打字速度和准确性。Java作为一种跨平台的编程语言,具有“一次编写,到处运行”的特性,因此使用Java开发的打字软件能够在多种操作系统上...
Android UI设计工具是开发者和设计师用来创建Android应用用户界面的重要工具。这些工具简化了设计过程,使得无需深入编码即可创建直观、美观的界面。在提到的"android ui设计工具"中,特别提到了一个名为"DroidDraw...
Android Studio是Google官方推荐的Android开发工具,它基于IntelliJ IDEA,提供了强大的代码编辑、调试、性能优化等功能,且对Java开发有很好的支持。 六、Java与Kotlin的对比 虽然Java是Android开发的主力语言,但...
在Android应用开发过程中,UI自动化测试是不可或缺的一个环节,它能够有效地提高测试效率,确保应用的质量。本篇将深入探讨Android的UI自动化测试技术,特别是围绕“uiautomation”这一主题,我们将涵盖以下几个方面...
总的来说,MATLAB的IMUI工具箱是图像处理和分析领域的重要资源,它提供了一套完整的解决方案,使得用户能够通过图形化界面轻松地进行复杂的图像操作和分析。通过深入学习和应用IMUI,开发者和研究人员可以提升工作...
3. **比较与同步**:对比不同语言的资源,确保翻译的完整性,避免遗漏或错误。 4. **预览**:在编辑过程中实时预览翻译效果,尤其是在UI设计中。 5. **版本控制**:与版本控制系统无缝集成,方便团队协作。 6. **...
**SWT教程——Java开发中的图形用户界面设计** SWT(Standard Widget Toolkit)是Java编程环境中用于构建桌面应用程序的一种GUI库。它由Eclipse基金会维护,是Eclipse IDE的基础组件之一,提供了丰富的用户界面控件...
【Java开发的考试系统源码】是一个用于实现单机版考试登录功能的程序,它基于Java编程语言构建,提供了一套完整的系统供用户进行在线测试。这个系统可能包含了登录界面的设计、用户验证机制、试题库管理、考试流程...
在 UG 二次开发工具中,还可以使用 VB、Java 等语言,通过对 UG 安装目录下各个 .set, .template, .dat, .dlg, .men 文件和数据库进行操作来达到上述二次开发工具同样的效果。这也是 UG 二次开发工具强大之处。 UG ...
总的来说,使用Java开发相机应用虽然相对复杂,但通过合理利用Java提供的工具和库,可以创建出功能丰富、用户界面友好的应用程序。这个项目不仅展示了Java在GUI开发中的灵活性,也突显了其在多媒体处理和硬件交互...