前端JS組件庫 OperaMasks-UI v1.1 正式版發布
OperaMasks-UI是OperaMasks團隊 2011下半年打造的一款輕量級前端JS組件庫,旨在提供一款學習曲線低、定制性靈活、樣式統一,且多瀏覽器支持、覆蓋企業業務場景的前端JavaScript UI組件庫。目前,該團隊已將這一產品以LGPL 開源協議開放給社區。
OperaMasks UI V1.1 正式版發布了。
下載地址:http://ui.operamasks.org/website/download.html
示例頁面:

此 版本對比之前的v1.0作了較多的改進,把一些核心文件進行了合并,重寫了部分組件結構,使其為統一的widget模式,添加了新的組件和插件,如 omItemSelector,omPanel 和omBorderLayout。在內部結構上也進行了很多統一,如統一的處理事件機制等。另外也修復了一些重要的bug。
新特性
1. 添加了五個新的組件:
- omItemSelector: 一個左移右移組件
- omPanel: 面版是一個布局組件,同時也是一個展示內容的容器
- omBorderLayout: 頁面布局基礎組件,把頁面拆分為north,south,west,center,east(上、下、左、中、右)5個區域,除了center是必須設置的之外其他的都是可選的
- omProgressbar: 進度條組件,一般用來呈現任務完成的進度情況。
- omTooltip: 提示組件,當某個鏈接、表單、輸入框等需要做功能向導提示的時候可以使用本組件。
- omGridSort: 一個grid的排序插件,可讓grid支持客戶端排序和服務端排序,單獨使用omGrid時,要額外導入om-grid-sort.js和om-grid-sort.css這兩個文件
- omGridRowExpander: 一個grid的行展開詳情插件,可定制grid每一行的詳情信息,并隨意展開與收縮,單獨使用omGrid時,要額外導入om-grid-rowexpander.js和om-grid-rowexpander.css這兩個文件
改進
- 統一所有組件基于widget模式開發,使組件更具一致性。
- 把單個組件中用到的圖片進行合并。
- 內部統一了事件的觸發機制,統一觸發事件時event作為最后一個參數進行傳遞,統一事件觸發函數中的this為jquery對象。
- 內部添加對組件銷毀的監控,避免用戶自行調用組件的remove方法刪除組件時造成內存泄漏。
- 優化了組件的重新初始化,v1.0版本組件重新初始化(如第二次調用 $("#acc").omAccordion({/**some config**/}))不太完善,很多屬性重新初 始化后并不會生效,本版本進行了較大的改進。
- 改進了組件的國際化,從每一個國際化組件占用jQuery一個名稱空間改為所有國際化組件共用$.om.lang這個單獨的名稱空間,減少名稱空間污染,并把國際化處理邏輯 移至om-core.js。
- 修改了omMenu和omButton的樣式。
升級說明(從v1.0 到 v1.1)
本版本的升級非常簡單,只有幾個要點需要注意:
- 在組件的事件監聽器中,event參數統一改為最后一個參數,所以監聽器有event參數的要重新更改一下參數順序(如omFileUpload組件事件監聽器)
- 事件監聽器中的this現在統一改為jquery對象,之前可能表示dom節點,也可能表示jquery對象,還可能是組件實例
- 凡是以前使用到類似jquery.ui.mouse.js,jquery.ui.position.js這樣的功能性文件時,記得現在要換為以om前綴開頭的, 比如,以前你導入了jquery.ui.mouse.js,現在要改為om-mouse.js
文件變更
- 把jquery.ui.widget.js和jquery.ui.core.js 進行了合并,改名為 om-core.js,并修改了部分代碼。
- 把jquery.ui.mouse.js,jquery.ui.position.js等功能性文件名全部改為以om為前綴,如jquery.ui.mouse.js改為om-mouse.js
重要bug修復
- [AOM-328] - omTree的refresh方法不能刷新到最新數據
- [AOM-434] - validator 插件校驗成功后沒有將錯誤信息標簽隱藏
- [AOM-435] - css合并時出現問題,導致grid樣式出現錯誤
- [AOM-438] - omMenu當菜單項文字過長時樣式混亂
- [AOM-441] - numberfield在chrome中文輸入法下有問題
- [AOM-442] - om-tabs在添加很多個頁簽后,當頁簽頭的寬度超過5000px的時候出現換行。
- [AOM-444] - omGrid在IE6下內容過長時表頭表體對不齊
- [AOM-448] - 如果右鍵菜單具有子菜單,會導致橫向滾動條出現
- [AOM-451] - om-numberfiled基本用法時,輸入: 0000、000000.3、.3、-00000這類數據時并不會自行修正
- [AOM-456] - omTab關閉頁簽之后下一步總是打開第一個頁簽
- [AOM-458] - omTree監聽omDrag事件報錯
- [AOM-461] - 全局事件綁定方式可能引發內存泄漏
- [AOM-463] - 當單獨引入om組件(不包括jquery開頭的文件), 另外引入jquery UI組件庫時頁面報錯:"Cannot read property 'prototype' of undefined" [AOM-484] - menu鍵盤操作向上有問題
本文由用戶 fmms 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!