·什么是FDUI?
FDUI,是一个javascript控件库,采用面向对象设计方式编写。FD是Freedom的缩写。
该控件库包含了常用的form控件,日历,Tips,Tab,window,验证,还有一些基本的工具类。
·为什么要写这个控件库?
原因有很多,最重要的一个原因是因为自己写JS也有些年头了,手头始终拿不出一件像样的东西。
这次是下了狠心要写个东西出来,算是对自己这些年学习JS的一个交代吧。
·为什么要采用面向对象?
JS可以利用各种手段来模仿面向对象,总的来说是7分像了。面向对象的好处有一点可以提高代码的重用性。
比如一些控件的功能都是一样的,TextBox和TextArea都有赋值、取值的操作,这样就可以把这些操作封装在一个父类中,
让它们来共同调用。
关于这点我在写代码的过程中深有体会,有些控件只需要5分钟就可以搞定。一天可以写2-3个控件。因为大部分功能都
封装在父类里面了。
功能的模块化:每一个类实现自己特有的功能,这样在以后修改功能的时候直接找到这个类就可以。不用东改一点西改一点了。
除此之外,还用到了一些设计模式。FDGrid我就采用了MVC的设计模式,还有装饰器模式。
PS:为什么要面向对象?其实我一个Java程序员我会乱说?
·不足之处
1. 不支持IE6(为什么要支持?)
2. 样式有点单调,因为没有用到图片
3. 有些功能还没有实现或者还不够完善
4. 没有做过很好的性能测试,不过一般的CRUD操作是没问题的
·持续改进
以后有时间的话会把Tree控件做起来,然后完善Grid的一些功能(列隐藏,本地数据排序等...)
-------------------------------------------- 程序截图 --------------------------------------------
-------------------------------------------- 文档截图 --------------------------------------------
-------------------------------------------- 架构图 --------------------------------------------
-------------------------------------------- 部分JS文件图 --------------------------------------------
组件的外观看上去还是有点搓的,毕竟没有用到图片.之前是为了节省资源和偷懒就没用图片了.
再者自己的CSS功底薄弱,有图片也调整不好位置,想想就放弃了.
对于没接触过面向对象的同学看代码可能有些吃力,幸好我在绝大部分的方法上都做了注释,算是一种补偿吧 :)
文档是用工具生成的,根据代码中的注释生成.
下载地址:点击进入