下载地址:http://code.google.com/p/jwt/downloads/list
Jwt是什么?
Jwt是一套基于mootools开发的山寨Ext,整套组件的结构和风格均山寨Ext Js,并使用Ext的css和图片,代码结构也参考了Extjs.
Jwt有哪些主要的组件
主要包含BoxComponent,Panel,TabPanel ,ViewPort,Window,MessageBox,Combox,ComboboxGrid,GridView,GridPanel,Toolbar ,TreeView,Canlendar,Button,TextField,DateField等,使用方法和风格均类似Ext.
和ExtJs有什么不同
首先,Jwt基于mootools ,运行是需mootools是支持;
其次,思路和出发点与Ext不同,Jwt目标并不是完全使用Js进行前端界面的开发,而是作为传统的Web开发方法的一个重要工具集 ,所以很多组件的实现思路完全不同,如GridView,Treeview等,表单部分的组件也基本不提供.所以和Ext相比体积更小(包含 mootools在内,全部源码不足500k).
为什么不直接使用Extjs,而选择了山寨一个轮子?
其实原因上面已经介绍了,Jwt的使用目标和EXT Js不太完全一致,项目中既需要一部分常用的界面控件,同时Ext Js庞大的体系结构中很多是我不需要的 ,并且很难裁剪(针对Ext js3.0而言),在动手山寨之初,也考察过jquery众多的插件,发现jquery插件虽然遍天下,但没有成体系,风格很难统一,并且要扩展也很困难,事实上,jquery以dom节点进行操作的风格,使得用jquery来构建一套控件库相当不方便,因此目光便落在mootools身上,悲摧的是,mootools 在界面UI上基本一穷二白,只好自力更生山寨之.
Jwt是否支持国际化和换肤?
1.Jwt的一些固定文本全部定义在Jwt.Locale中,拜js动态脚本的便利机制,只要重新定义Jwt.Locale的各个Key值,即可方便的进行语言切换,Jwt.Locale的主要结构如下:
Jwt.Locale = {
Date : {
Months : ['一月','二月','三月','四月','五月','六月','七月','八月','九月','十月','十一月','十二月'],
Weeks : ['日', '一' ,'二' ,'三' ,'四' ,'五' ,'六'],
Today : '今天',
Close : '关闭',
Prev : '前页',
Next : '后页'
},
MessageBox : {
Buttons : {
ok : "确定",
cancel : "取消",
yes : "是",
no : "否"
},
OK : ['ok'],
CANCEL : ['cancel'],
OKCANCEL : ['ok' , 'cancel'],
YESNO : ['yes' , 'no'],
YESNOCANCEL : ['yes' , 'no' , 'cancel'],
HINT : '提示'
},
Dialog : {
DEFAULT_TITLE : '对话框窗口'
},
PropertyGrid : {
NAME : '属性名',
VALUE : '属性值'
},
Ajax : {
REQUEST_FAILURE : '查询数据发生异常!',
PARSE_FAILURE : '解析服务器返回的数据失败!',
NOLOGIN : '您没有登录或连接超时,请重新登录',
ACCESSDENY : '您没有操作权限,请联系管理员',
EXCEPTION : '系统发生异常,请联系系统管理员'
}
};
2.换肤可以通过修改CSS样式表来实现.
Jwt开源吗?
Jwt承诺永久开源,每次发布均提供全部源代码,不压缩,不混淆,运行环境请自行使用YUI的压缩工具压缩,同时由于引用的Ext的很多css样式定义和图片,以及参考了Ext Js的代码结构和命名方式,为避免版权问题,采用GNU GPL license v3协议.