`
hexiaodong
  • 浏览: 65795 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

升级的浏览器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. 标题锁定,假如需要纵向滚动,表格标题不会被隐藏。
废话少说,大家下载代码看看吧。希望能看到热烈的交流。
分享到:
评论
29 楼 hexiaodong 2007-02-14  
tab 键焦点右移
enter键焦点下移
28 楼 zack 2007-02-12  
应该是可以屏蔽的,我在你的程序中if(window.event.keyCode==13)修改成if((window.event.keyCode==13)||(window.event.keyCode==9))时,Tab和回车都是把焦点转移到下一个input。实际上只要把回车修改成转移到下一行同一列就可以了
27 楼 hexiaodong 2007-02-12  
浏览器会自动响应tab键,把焦点转移到下一个input,这个我阻止不了
26 楼 zack 2007-02-12  
还有一个建议,在使用Grid输入时,用Tab键可以进入下一个可编辑框,用回车可以进入下一行同一列。在Delphi和PB中的Grid输入都是这样的
25 楼 zack 2007-02-12  
非常感谢楼主。
24 楼 hexiaodong 2007-02-12  
zack 写道
建议主增加一个根据单元格的内容可以自动设置是否可以编辑和显示的格式和背景,如可以根据单元格A的值来判断当前单元格B是否只读和字体的颜色


现在可以根据表达式计算某个单元格是否可编辑了,至于根据表达式计算单元格展示的样式,你可以自己写一个CellRender来实现。
23 楼 hexiaodong 2007-02-11  
根据表达式判断单元格是否可读,需要增强Grid的功能。至于根据其他单元格内容以不同方式来显示当前单元格,需要你自己定一个特别的CellRender
22 楼 zack 2007-02-11  
另外,楼主是否可以设置全局的是否允许排序状态
21 楼 zack 2007-02-11  
建议主增加一个根据单元格的内容可以自动设置是否可以编辑和显示的格式和背景,如可以根据单元格A的值来判断当前单元格B是否只读和字体的颜色
20 楼 sinbo 2007-02-11  
继续努力,一直关注中.
19 楼 hexiaodong 2007-02-11  
再加点什么功能?大家提提意见
18 楼 zack 2007-02-09  
楼主的动作真快啊,一直在关注楼主这个工具的
17 楼 godson_2003 2007-02-09  
抢鲜

一直关注中
16 楼 hexiaodong 2007-02-09  
1、增加删除行、增加行功能
2、增加对自定义CellRender和CellEditor的支持。自定义Render的申明如下:
   var myRender = new function(){ this.paint = function(grid,row,col){....}}
   列的定义
   {name:"name",caption:"姓名",width:120,mode:"link",render:myRender,href:"nameLinked"},
15 楼 hexiaodong 2007-02-08  
恩,新版本还没做到这一步
14 楼 zack 2007-02-08  
楼主,我今天看了一下新版本的js程序,好像当中没有增加行和删除行的功能了
13 楼 hexiaodong 2007-02-08  
最近在开发一个项目,大概下周更新。
下一版本,提供类似swing表格的功能,允许开发者注册自己的CellRender和CellEditor。
12 楼 zack 2007-02-07  
楼主已经好久没有更新了,不知有什么消息可以提前透露一下吗?
11 楼 hexiaodong 2007-02-02  
恩,不错的建议。谢谢
10 楼 QMax 2007-02-02  
关于grid的编辑,我看很多可编辑的grid都只是提供几种简单的编辑框test,select checkbox之类,实际上很多时候这种个性化的编辑框可能远远超过这几种,我觉得是否可以提供比较方便扩展的接口,比如可以传入自己定义的一段innerHtml,这样不满足需要的时候,可以自己写一个编辑框的html传进来。只是这可能需要定义好一个get 和set的方式。一定建议,供参考

相关推荐

    Bootstrap 样式的 Blazor UI 组件库,适配移动端支持各种主流浏览器,适配 ABP

    BootstrapBlazor组件库中包含了一系列预制的UI组件,如按钮、输入框、表单、卡片、导航栏等。这些组件不仅外观样式与Bootstrap保持一致,而且行为上也遵循了Bootstrap的交互设计模式。这大大减少了开发者对界面样式...

    xyui是一套使用原生WebComponents规范开发的跨框架UI组件库

    - **框架无关性**:因为基于Web Components,xyui组件能直接在HTML中使用,不依赖特定的MVC框架,易于迁移和升级。 - **性能优化**:由于Shadow DOM的存在,组件的渲染性能得以优化,避免了全局样式的影响。 通过`...

    基于Vue3和TypeScript的轻量级UI组件库设计源码

    在探讨基于Vue3和TypeScript的轻量级UI组件库设计源码时,首先要了解Vue3和TypeScript这两个前端技术的核心特点。Vue3是Vue.js的最新主要版本,提供了响应式系统升级、Composition API等新特性,旨在简化组件逻辑和...

    H587国外_HTML手机电脑网站_网页源码_移动端前端js效果_H5模板_自适应css样式ui组件.zip

    而UI组件则是预设计的可复用代码块,如按钮、导航栏、表单等,它们遵循一致的设计风格,可以方便地集成到项目中,提升开发效率并保持界面一致性。 总的来说,这个资源包是一份全面的前端开发工具集,涵盖了HTML5的...

    H597国外_HTML手机电脑网站_网页源码_移动端前端js效果_H5模板_自适应css样式ui组件.zip

    至于"ui组件",它们是网站或应用界面的构成元素,如导航栏、按钮、滑块、下拉菜单等。这些预设的组件通常基于HTML5、CSS3和JavaScript实现,具有良好的可复用性和定制性。通过学习和使用这些组件,开发者可以快速...

    H+ui 4.1 新版本 web前端ui框架 最新版

    2. **丰富的组件库**:框架内包含了大量的UI组件,如导航栏、按钮、表单、网格系统、弹出框、提示信息、轮播图、时间线、统计图表等,满足各种常见应用场景。这些组件均遵循统一的设计风格,易于集成和扩展。 3. **...

    ligerui

    它的核心特性在于提供了一整套易于使用的UI组件,使得开发者能够快速地搭建功能丰富的交互式界面。LigerUI不仅关注美观,还强调易用性和性能,使得开发者在满足用户需求的同时,也能保证项目的高效开发。 1. **组件...

    element-ui V 2.12.0 lib

    总结来说,Element UI v2.12.0 是一个强大的 UI 库,提供了多种可复用的组件,支持响应式设计,并且持续进行性能优化和功能升级,对于 Vue.js 开发者来说,是一个值得信赖的开发工具。通过了解其组件特性和版本更新...

    kendoui资源包

    kendoui资源包是一个专为JavaScript开发设计的工具集合,它为构建现代Web应用程序提供了丰富的UI组件和功能。Kendo UI是Telerik公司推出的一款强大的前端框架,它旨在提高开发效率,提供美观且响应式的用户界面。 ...

    漂亮的UI插件(多平台使用)

    jQuery EasyUI是一个基于jQuery的轻量级框架,它提供了一系列易于使用的UI组件,如对话框、表格、菜单、面板、滑块等,能够帮助开发者快速构建具有专业外观的Web应用界面。 "还有漂亮的CSS"意味着包内包含了一套...

    fry:基于react的UI组件库

    【标题】:“fry:基于React的UI组件库” 【描述】:“fry是一个基于React技术构建的UI组件库,旨在提供一系列预先设计和优化的React组件,以便开发者能够快速、高效地构建用户界面。” 【知识点详解】: 1. ...

    kendo ui学习资料

    通过自定义这些样式,开发者可以调整Kendo UI组件的外观以符合项目需求。 总体而言,这份“Kendo UI学习资料”是全面了解和掌握Kendo UI的一个宝贵资源,涵盖了从基础使用到高级定制的多个层面,对于初学者和进阶...

    记录让Element-UI的ElPopover组件支持鼠标右键弹出

    值得注意的是,修改组件库的源码可能会影响到后续的升级和维护。因此,文档中提到的“Element-UI源码修改”是一个重要的记录点,它暗示了此次改动是直接在Element-UI的源码基础上进行的。这要求开发者在未来的维护中...

    jquery-ui-1.8.16.custom.zip

    1. **jQuery UI的核心特性**:jQuery UI提供了数十种可定制的UI组件,包括但不限于对话框(Dialog)、下拉菜单(Dropdown)、滑块(Slider)、进度条(Progressbar)、日期选择器(Datepicker)等。这些组件具有良好...

    jquery-ui-1.10.4

    jQuery UI 是一个基于 jQuery JavaScript 库的强大用户界面库,提供了丰富的交互效果、可定制的主题以及多种可重用的组件。在本篇文章中,我们将深入探讨jQuery UI 1.10.4版本的核心特性、功能及其在实际开发中的...

    Tailwind UI 最新版2024-02-14.zip

    1. **新组件**: 更新可能引入了新的UI组件,如表单元素、导航菜单、卡片、模态框、提示等,以满足更多设计需求。这些组件遵循最新的Web设计趋势,确保你的网站保持现代感。 2. **性能优化**: 新版本可能对代码进行...

    基于ElementUI二次封装的支持自适应列宽的tablecolumn列组件

    - **API设计**:新组件的API应该易于理解和使用,同时保持与原Element-UI组件的兼容性,方便开发者切换和升级。 - **性能优化**:由于涉及实时计算和调整列宽,可能会影响渲染性能。需要避免不必要的计算,如使用...

    jQuery LigerUI V1.3.2

    jQuery LigerUI V1.3.2是一款基于jQuery的前端用户界面库,旨在提供一系列丰富的UI组件,以帮助开发者快速构建具有专业外观和交互效果的Web应用。LigerUI是轻量级且易于使用的,它将jQuery的强大功能与美观的界面...

    jquery-ui-1.8.6

    1. **组件丰富**:jQuery UI 包含了大量的UI组件,如日期选择器(Datepicker)、对话框(Dialog)、拖放(Draggable)、可排序(Sortable)、可叠放(Stackable)、可折叠(Collapsible)、滑块(Slider)、进度条...

    UE5 内嵌网页插件 WebUI

    UE5 WebUI插件的使用对于游戏和应用开发者来说可能是一次重要的技术升级,它允许开发者通过简单的配置和编程来实现游戏内嵌入网页的功能,而无需对网页和游戏两个独立系统的交互进行复杂的手动编码。这不仅节省了...

Global site tag (gtag.js) - Google Analytics