升级的浏览器UI组件

阅读更多
在“交流web上的UI组件,我来开个头 这篇帖子了,我把自己写的一些浏览器UI组件和大家交流了一下,还是由很多人感兴趣的,也对这些组件指出了一些不足之处。
 
最近难得有闲,准备把这些UI组件重写一遍。断断续续写了几天后已经有一些进展了,最先初具形状的是Grid组件。但该组件和原先的SigmaGrid并不相同,在新的版本中,我想把它和SigmaList功能合二为一。在旧的版本中,SigmaGrid主要用于少量对象集合的编辑和展示,比如:在订单编辑界面中,可以SigmaGrid来展示和编辑订单明细对象。而SigmaLIst主要用于大量对象集合的展示,不具备编辑功能,它主要用于一些报表界面中。在新的SigmaWidgets中,我希望SigmaGrid具备以上所有功能。
 
但目前还没有完整实现我的设想,到目前为止新版的SigmaGrid仅仅实现了旧版中SigmaList功能,但这次实现已经具备跨浏览器能力,至少,它可以很好地运行在ie和firefox下。列一下目前的功能吧:
  1. 跨浏览器。
  2. 可以加载大数据量,事实上无论你绑定的数据中有多少个对象,组件只会画出当前可见的那些对象。因此,组件绑定数据本身的过程是很短暂的。但滚动条滚动的过程不是很流畅。
  3. 嵌套的表头定义,不限层次。
  4. 丰富的列属性可供设置:你可以指定每一列数据来自对象的哪个属性、属性值类型、列宽度、列align方式、列标题。可申明的值类型暂时只包含:string、number、date、boolean、link、select、percent。其中number和percent还可以指定小数位格式,比如#.00表示强制保留两位小数。
  5. 支持ognl方式定义列的数据源,假如,表格绑定的是person集合,person关联到部门,那么你可以把显示部门名称的这一列申明为name:”deparment.name”。
  6. 列锁定,你可以指定表格最前面多少列是不允许横向滚动的。
  7. 标题锁定,假如需要纵向滚动,表格标题不会被隐藏。
废话少说,大家下载代码看看吧。希望能看到热烈的交流。
  • sigmaui.rar (8.6 KB)
  • 下载次数: 432

你可能感兴趣的:(浏览器,UI,单元测试,IE,json)