# 更新记录
## v 1.6.0
### 更新明细
* 文件上传:
- 新增文件上传视图,支持如下特色功能:
+ 提供多种预设的文件列表界面,包括普通列表、大号列表及网格;
+ 支持大文件分片上传;
+ 支持显示文件上传进度及上传速度等状态信息;
+ 支持自定义界面模板,灵活定制个性化的文件上传界面;
+ 支持拖拽文件上传;
+ 支持文件队列,可以自动或手动上传文件;
+ 支持七牛 js-sdk 上传文件,只需要简单配置;
+ 支持图片文件缩略图及显示文件的个性图标;
+ 支持过滤图片文件大小及格式、支持预处理图片文件(包括缩放、裁剪等);
+ 支持 HTML5、flash、serverlight 等形式上传文件;
+ 支持对服务器结果进行识别,包括上传结果及自动为下载按钮应用下载地址;
+ 支持在文件列表显示静态文件;
* 图标:
- 新增了一些字体图标,包括 `.icon-database`、`.icon-eraser`、`.icon-strikethrouth`、`.icon-underline`、`.icon-header`、`.icon-italic`;
- 修复了图标旋转辅助类在低版本 IE 中无效的问题;
* 开关控件:
- 新增开关控件 `.switch`,详情访问 http://zui.sexy/#control/switch ;
* 文档网站:
- 修正当页面打开对话框后按 `ESC` 键导致文档页面关闭而对话框背景层还存在导致页面不可用的问题;
- 修正了文档上一些资源的路径,现在文档支持使用网址的二级目录形式访问;
- 文档上了示例代码都增加了语言类型提示;
* 标签页导航:
- 新增垂直的标签页式导航,使用 `.nav.nav-tabs.nav-stacked` 实现;
* 垂直菜单:
- 修复垂直菜单初始状态下展开图标不整齐的问题;
- 垂直菜单已不建议使用,现在可以使用树形菜单 `.tree.tree-menu` 来实现垂直菜单的功能,详情参见文档 [视图 → 树形菜单 → 树形导航菜单](#view/tree/1);
* 树形菜单:
- 新增树形导航菜单外观,使用 `.tree.tree-menu` 实现;
- 修复了 `.tree-lines` 在一些情况下连接线不连贯或超出的问题;
* 图表:
- 更改了配置项 `multiTooltipTemplate` 的默认值,现在默认情况下会显示数据值所属的数据表名称;
- 优化饼图上的标签显示策略,现在标签会自动选择合适的位置显示,不会重叠在一起;
* 拖拽:
- 重做了拖拽插件,支持一次性初始化多个被拖拽元素(包括动态加入的元素),提升了性能;
* 拖放:
- 重做了拖放插件,支持为一组元素(包括动态加入的元素)的拖放操作,提升了性能;
* 拖放排序:
- 重构了拖放排序插件,提升了插件性能,解决了在多次调用后导致卡顿的问题;
* 拖拽选取:
- 修复了有时 `finish` 事件没有被触发的问题;
- 提升了拖拽选取交互过程中的性能;
* 看板:
- 提升了性能,修复了看板上的条目在拖动时重复绑定事件的问题;
* 日历:
- 提升了性能,修复了在某些极端情况下导致无法放置拖放的日历事件的问题;
* 仪表盘:
- 仪表盘现在支持通过拖拽面板底部边缘来调整面板的高度,在同一行上的面板会在其中一个高度变化时自动调整高度来保持一致;
- 提升了插件运行效率;
* 工具提示:
- 增加了 `tipClass` 和 `tipId` 选项;
- 增加多种颜色主题,可以通过 `tipClass` 来指定;
* 提示面板:
- 增加了多种颜色主题;
- 修复了在手动调用 `$().tooltip('hide')` 之后,没有从页面移除动态生成的 `.tooltip` 元素的问题;
* 下拉菜单:
- 增加 `.dropdown-hover` 类来实现不需要点击触发按钮只需要鼠标悬停就可以展开下拉菜单面板;
* 文字排版:
- 有序列表增加 `.ol-pd-2`、`.ol-pd-3`、`.ol-pd-4` 特殊类来修正左侧边距,并提供了一个 JS 方法 `$().fixOlPd()` 来手动修正;
- `
` 元素增加了 `.divider` 和 `.divider-sm` 类获得不同外边距的分割线;
- 为 MacOS 增加苹方字体;
* 漂浮消息:
- 修复了当指定了自定义操作按钮及 `onAction` 事件回调函数时提示 `result` 未定义大问题;
- 修复了方法名命名错误,`destory` 更正为 `destroy`;
- 修复了使用 `new` 方法创建实例时报错的问题(issue #32);
* 富文本编辑器:
- 重构了打包任务,修复了在 `dist` 目录下没有包含插件资源的问题;
- 修复了在一些浏览器上对话框上的按钮在英文界面上文字显示不全的问题;
* 日期选择器:
- 修复了在点击清空按钮后,再次弹出日期面板上的左右切换日期按钮失效的问题;
- 新增 `eleClass` 和 `eleId` 选项来为动态生成的日期选择面板元素指定 CLASS 和 ID 属性;
* 颜色选择器:
- 修复了 `updateColors()` 和 `addColor()` 方法无法直接添加字符串形式的颜色值的问题;
- 修复了在 jQuery 3.x+ 上报错的问题;
* Chosen:
- 增加 `middle_hightlight` 选择来让打开下拉面板时选中的选项尽量列表中间位置;
* 主题:
- 修复了在主题中为面板组和标签设置圆角值无效的问题;
* 其他:
- `.show` 辅助类会使用 `!important` 修饰,避免在一些情况下失效;
- 增加辅助方法 `$.zui.strCode(str)` 来将一个字符串转换为一个唯一的数值,任何字符串都对应一个唯一的整数;
## v 1.5.0
新增拖拽选取和颜色选择器插件,大量组件根据社区反馈进行了优化,修复了已发现的问题,加入支付宝和淘宝相关字体图标。
文档网站得到大幅改进,为宽屏用户增加了双栏浏览模式,大部分组件文档都得到更新,更全面的说明更多的示例和代码。
### 更新明细:
* 文档网站:
- 新增一些基础内容文档,一些缺失文档的组件得到更新,包括:多选和单选框、Color、拖动、拖放排序等,大量旧的文档得到更新;
- 新增双栏浏览模式,实现在宽屏设备上同时浏览目录和页面内容,要求浏览器视窗宽度不少于 `1200px`;
- 所有内部页面均转换为 Markdown 格式,更易于维护;
- 修复第一次访问文档有时无法成功获取病显示 ZUI 版本号,并且无法自动打开 URL 指定的的子页面;
- 修复加载内部页面有时出错的问题;
- 修复内部页面顶部徽标信息不正确的问题,所有源于 Bootstrap 组件的内容在内部页面都有专门的徽标标识,源码及打包文件列表下拉菜单中不再显示压缩后(包含 `*.min.*`)的文件链接,文件链接会指向当前版本的链接而不是最新开发中的文件;
- 修复“选择版本和定制”页面组件清单不准确的问题,增加显示组件来源信息;
- 当使用 `file:` 协议访问文档首页时会显示部署到服务器的提示信息;
- 修复内容页面加载失败后错误信息不显示的问题;
- 优化文档资源(包括 JSON 文件和图片),提升加载速度;
- 当前版本新增或得到更新的文档内容页面会在目录显示对应的徽标;
- 增强文档搜索功能,支持 `v:` 和 `v:new` 命令来查找更新和新增的内容;
- 完善了文档索引数据,更方便搜索内容,更准确的目录信息;
- 优化打开日期选择插件页面后在主页面创建很多无用的元素的问题;
- 文档网站不再为 IE8-10 提供完整支持;
- 优化文档在移动设备上的体验;
* 颜色选择器:
- 新增颜色选取插件,方便用户选择预设的颜色或输入颜色值,在 `dist/colorpicker` 目录下可以找到相关文件;
* 拖拽选取:
- 新增拖拽选取插件,方便用户通过拖拽区域来选择区域范围内的元素,在 `dist/selectable` 目录下可以找到相关文件;
* 图标:
- 新增支付宝和淘宝图标;
- 使用 `.icon` 类实现等宽图标;
* 树形菜单:
- `initialState` 选项新增 `preserve` 值,允许使用本地存储来还原用户上次操作后的状态;
- 新增一系列新的选项支持动态构建和更新 DOM 节点,新增导出数据功能;
- 优化 `.tree-lines` 选项,现在任何时候都不会显示多余的连接线;
* 漂浮消息:
- 现在可以通过多个消息示例在页面上同时显示多条消息;
- 现在可以自定义消息右侧的操作按钮,可以同时显示多个操作按钮;
- 支持通过选项来指定动态创建的消息元素的类;
- 新增 `destory` 方法,从页面移除动态创建的元素;
* Kindeitor:
- 修复页面上无法加载 `kindeditor.min.css` 的问题;
- 移除 `dist/kindeditor` 目录下的一些没有用到的文件;
- Kindeitor 在获得焦点时会自动为编辑器容器元素添加 `.hover` 类来实现获得焦点外观效果,不再需要用户手动绑定 `afterFocus` 和 `afterBlur` 事件来实现;
* UEditor:
- 为 UEditor 增加主题样式表,可以在 `dist/ueditor/` 目录下找到;
* jQuery:
- 修复与 jQuery 2.* 及 3.* 版本一起使用时发生错误的问题;
* 下拉菜单:
- 优化包含子菜单的下拉菜单,可以为子菜单的 `.dropdown-menu` 添加 `.pull-left` 类来更改子菜单弹出方向;
- 优化下拉菜单按钮中的三角图标样式;
* 标签页:
- 现在可以通过为触发元素添加 `[data-tab]` 属性来快捷启用标签页;
* 折叠:
- 优化折叠分组的实现,不仅仅是面板组,现在可以使用任何相同的父级元素来实现任意分组;
* 栅格和布局:
- 增加 `.container-fluid` 和 `.container-fixed-*`;
- `.responsive-*` 可以配合 `.inline` 和 `.inline-block` 使用;
* 文字排版:
- 增加 `.dl-inline` 辅助类;
- 优化引用块的外观;
* 代码:
- 新增对 `` 应用外观样式;
- 新增 `.code` 类应用等宽字体样式;
* 滚动条:
- 滚动条外观仅仅针对移动设备使用;
* 进度条:
- 优化条纹外观效果;
* 标签和徽标:
- 优化标签和徽标外观,优化其在导航中或配合其他组件使用时的样式;
* 表格:
- 新增 `.table-auto` 类实现自动宽度表格;
* 表单:
- 优化表单控件及视图,移除表单中对 `.control-label` 的依赖;
* 导航和导航条:
- 限制了 `.navbar-brand` 的水平内边距,不会出现过小的情况;
* 本地存储:
- 修复了本地存储不可用出现错误的问题;
- 现在在本地存储不可用时调用相关方法也不会出现错误,这些数据会存储在内存中;
* 工具提示:
- 修复使用 `show` 方法更新内容失效的问题;
* 对话框、对话框触发器:
- 修复 iframe 对话框设定 `[data-height]` 后无法显示的问题;
- 修复对话框触发器的 `loaded` 事件有时会调用两次的问题;
- 重新设计了全屏对话框外观,`.modal-body` 的内容超出后允许滚动浏览;
* 模态对话框:
- 调整按钮顺序,现在表示积极操作的按钮会显示在前面;
* 分页条:
- 修复激活的条目和禁用的条目样式有时没有生效的问题;
- 优化激活的条目的外观;
* 日历:
- 修复“今天”按钮不同年份也被禁止点击的错误;
- 修复 `startDate` 选项设置无效的问题;
* 仪表盘:
- 新增 `data` 选项,允许通过数据来动态创建面板内容;
- 支持通过拖拽面板边缘更改栅格尺寸功能;
- 优化从远处更新面板内容的策略;
- 优化操作按钮外观;
- 新增 `.panel-loading` 应用加载中的动态图标;
* 图片浏览:
- 修复打开图片浏览页面发生抖动的问题;
* Color:
- `isColor` 现在是类方法,不需要在实例上调用;
- 允许通过 `Color.names` 访问所有已命名的颜色;
* 数据表格:
- 修复固定头部时 `z-index` 过大会挡住页面其他内容的问题;
- 支持拖拽选取行;
- 修复点击切换选中行有时失效的问题;
- 现在可以随时通过 `chekcs` 属性来访问行选中情况;
- `fixedHeader` 选项默认值设置为 `false`,避免在一些情况下出现错位的问题;
* 文章:
- 新增 `.content` 类来取代 `.article-content`,在 `.content` 内段落等元素会应用下边距;
* 卡片:
- 优化卡片视图外观;
* 图表:
- 修复饼状图环绕文字标签有时不显示的问题;
* 看板:
- 可以通过 `.droppable` 选项来自行处理拖拽过程;
- 移除对 `[data-toggle="boards"]` 的支持;
* 图片剪切:
- 新增 `resetImage` 方法动态设置待剪切的图片;
* 主题:
- 修复主题中面板颜色主题不正确的问题;
- 修复了主题中分页控件激活的条目没有应用主题配色的问题;
* 开发者支持:
- 发布到了 npm;
- 支持使用 `npm start` 命令启动本地文档网站服务器(`http-server` 实现);
- 优化 gulp 任务,支持更多选项,新增 `lib` 和 `minJSON` 任务;
- 修改 `autoprefixer` 选项,现在已明确指定各浏览器版本;
- 移除了 `navbars.fixed-left.less`、`pager.popover.less`、`auto-trigger.js`、`pager.js`;
- 现在可以使用 `gulp lib` 来调用 `seperate` 任务;
- 优化文档的 debug 浏览模式;
- `boards`、`dashboard`、`sortable` 不再在标准版中提供;`bootbox`、`.colorpicker`、`colorset.js`、`dashboard`、`imgready`、`selectable`、`sortable`、`ueditor` 已加入独立组件包;
- 通过 gulp 生成的文件模式更改为 `644`。
## v 1.4.0
本次更新了大部分文档,增加了必要的代码示例。
简单易用的[树形菜单组件](http://zui.sexy/#view/tree)加入了ZUI。
主题功能得到增强,文档中的[主题章节](http://zui.sexy/#basic/theme)提供实时预览和编译定制功能。
修复了论坛和QQ群中反馈的大部分问题。
### 更新明细
* 完善和持续改进文档:
- 大部分组件文档都得到更新,增加了更多的示例和示例代码;
- 文档中的主题章节支持直接预览主题,并可以自定义修改主题配置并编译和下载主题(此功能在IE8等古老浏览器上不可用);
- 文档支持查看组件的源码和打包信息;
- 文档中的示例代码支持复制;
- 更正文档中的多个链接和拼写错误;
- 修复滚动条文档无法加载并显示的问题;
* 排版样式:
- 更改字体设置;
- 简化CSS CLASS名称,`hightlight-*`更名为`hl-*`;
* 栅格系统:
- 增加`.col`辅助类来方便自定义栅格大小;
* 提示消息和提示面板:
- 提示消息支持`tipClass`和`tipId`选项;
- 提示消息的`show(content)`方法增加content参数来动态改变现实的内容;
* 图标:
- 图标名称`icon-yingyang`更正为`icon-yinyang`,`icon-check2`更正为`icon-checked`;
- 修复图标旋转效果在非块级标签内无法生效的问题;
- 更新图标字体,更改了字体的`base height`,现在图标和文字混合时更为自然;
* 消息框:
- 移除了消息框的边框,现在看起来更为扁平;
- 增加`.alert-primary-inverse`的深色外观的使用主要配色的消息框;
* 标签和徽标:
- 更改标签和徽标的内边距和行高,解决在部分浏览器中的尺寸和对齐问题;
* 按钮和按钮组:
- 更改按钮样式,更加扁平化;
- 链接按钮的默认背景色现在为`transparent`;
- 更改按钮选中或激活时的外观,现在看起来更为明显;
- 按钮的圆角边框可以在`variables.less`中单独定义;
- 更改按钮的过渡动画时间从预设的较慢时间更改为正常时间,预设的时间参考`variables.less`中的定义;
- 修复垂直按钮组上顶部第一个按钮圆角边框显示不正确的问题;
* 滚动条:
- 优化Webkit家族浏览器上滚动条的样式;
* 表单控件:
- 优化表单中的单选框和复选框的样式,现在与文字混合使用时在垂直方向上看起来更为居中;
- 更改一些被禁用的表单项目样式,更改鼠标悬停时的光标;
* 导航:
- 修复垂直导航的圆角样式;
* 进度条:
- 调整进度条外观,移除阴影效果,现在看起来更为扁平;
* 面包屑:
- 更改面包屑激活项目的颜色,现在看起来更为明显;
* 树形菜单:
- 增加树形菜单视图;
* 对话框和对话框触发器:
- 模态框框更名为“对话框”;
- 对话框支持全屏对话框,通过`.modal-fullscreen`实现;
- 修复对话框触发器中的模态框大小配置没有正确应用的问题([by @remind](https://github.com/easysoft/zui/issues/10));
- 可拖拽移动的对话框开启选项名称由`draggable`更改为`moveable`;
- 为所有类型的对话框增加`rememberPos`选项来记住用户拖拽后模态框的位置;
- 修复了拖拽移动对话框时的一些错误;
- 模态框框触发器更名为“对话框触发器”;
- 远程对话框中的iframe标签增加`allowfullscreen`属性(by @YuanXu);
- 对话框触发器增加`iframeBodyClass`选项来定义远程对话框中的iframe标签上的CLASS;
- 修复对话框触发器弹出的对话框有时高度不停微小浮动抖动的问题;
- 对话框触发器增加`waittime`选项来显示远程内容加载的时间,增加`broken`事件来监听远程内容加载失败时的事件;
- 对话框触发器增加`loadingicon`选项来自定义远程加载内容时所显示的图标;
- 通过按钮触发的对话框触发器现在在每次触发时都会重新读取远程地址的值,意味着可以在每次弹出对话框之前通过更改地址参数来动态的通过对话框加载不同的远程内容;
* 日期选择:
- 日期选择插件增加`pcikerPosition`选项来控制弹出面板的弹出方向和显示位置,如果此选项指定为`auto-*`,则自动决定最合适的位置;
* Chosen和图标选择插件:
- 为Chosen增加`dropDirection`选项来控制弹出面板的弹出方向,如果为`auto`则自动决定最合适的位置;
- 为Chosen增加`lang`选项来设置界面语言;
- 优化Chosen界面样式;
- 修复图标选择插件有时无法使用的问题;
- 图标选择插件能选择更多的图标,包括WeChat图标;
- 修复图标选择插件无法正确读取和应用语言设置的问题;
- 加深了Chosen弹出面板的阴影效果,加强与其他内容的区分程度;
* 漂浮消息:
- 漂浮消息增加一个全局方法来隐藏所有已显示的消息;
- 漂浮消息的圆角大小在`varuables.less`中可配置;
* 滚动监听(scrollspy):
- 修复滚动监听事件名称错误;
* 拖放排序:
- 拖放排序组件增加`before`事件;
- 修复`reset()`方法有时工作不正确的问题;
* 表单:
- 移除`