zTree 是利用 JQuery 的核心代碼,實作一套能完成大部分常用功能的 Tree 插件。
- 相容 IE、FireFox、Chrome 等浏覽器(對于IE 6的相容問題将不做特殊維護)
- 在一個頁面内可同時生成多個 Tree 執行個體
- 支援 JSON 資料
- 支援一次性靜态生成 和 Ajax 異步加載 兩種方式
- 支援多種事件響應及回報
- 支援 Tree 的節點移動、編輯、删除
- 支援任意更換皮膚 / 個性化圖示(依靠css)
- 支援極其靈活的 checkbox 或 radio 選擇功能
- 簡單的參數配置實作 靈活多變的功能
zTree v2.6 正式版對比 v2.6.beta 來說修改的地方不多,主要是修改了幾個Bug。另外對于 check 功能做了一定完善,希望使用 checkbox 或 radio,但部分節點不顯示 checkbox / radio 的朋友們,使用 v2.6 正式版可以很 easy 的實作了。(總有朋友覺得我釋出zTree的時候不放圖檔,很不爽,這次就放上這個新功能的截圖吧。) 功能示範可以直接去 http://baby666.cn操作,也可以直接去 Google http://code.google.com/p/jquerytree/downloads/list 下載下傳。
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIiZpdmL0IzNmZjM2gDO4MTZtQWZmFWLjVWMz0iN3MDOtUTO3gDOyM2MvwFMxQTM5QzLcRnbl1GajFGd0F2LcRWYvxGc19CXt92YuUWelRXauwGZvw1LcpDc0RHaiojIsJye.gif)
zTree v2.6 是 v2.x 系列的終結版,下一步将全力開發 v3.0,并且不會再保證向下相容。如果發現重大 bug 會對 v2.6 進行修正,但不會再對其進行功能增加。
考慮到可能有朋友沒有使用 v2.6.beta 下面把這次 v2.6 的全部修改内容公布出來:
* 【修正 v2.6 beta】使用 addHoverDom/removeHoverDom 方法添加自定義控件以後,會出現節點失去焦點,但自定義控件沒有移除的 Bug
已解決,因為 onHoverOut 事件定義邏輯出現 Bug 導緻
* 【修正 v2.6 beta】對于zTree大容器進行圖層隐藏、顯示切換時,IE浏覽器下出現 未知的運作時錯誤。(Line:547)
已解決,利用 setTimeout 避免了與其他控件産生沖突
* 【修正 v2.6 beta】zTreeNodeCache 在反複 refresh 的時候會造成記憶體洩露
* 【修正 v2.6 beta】confirmRename 校驗失敗傳回 false 後,利用 updateNode 恢複節點原先狀态異常,無法選中其他節點的 Bug
* 【增加 v2.6 beta】nocheck 屬性;實作節點自定義是否顯示 checkbox/radio 的功能。
* 【增加 v2.6 beta】cancelInput 接口,允許通過 js 取消編輯狀态。
* 【優化】大資料量一次性加載的效率問題
* 【優化】checkbox選擇時父子關聯的效率問題
* 【修改】支援jQuery 1.3.2 / jQuery 1.6 的問題
* 【修改】zTree js檔案命名規範,符合jQuery插件的命名标準:jquery.ztree-2.6.js
* 【修改】expandNode 方法,增加 focus 參數(boolean),為保證向下相容,預設展開時會聚焦到節點上,如果不需要聚焦請設定focus為false
* 【修改】在Constructor裡以及refresh中,重新設定zTreeId = 0; 導緻實作多個Tree時,treeId計數清零出現重複id的Bug
* 【修改】contextmenu/mousedown/mouseup 事件未unbind的bug,如果多次refresh就會出現異常。
* 【修改】編輯名稱的狀态下點選其他節點時,無法儲存修改後名稱的bug
* 【修改】IE浏覽器節點重命名時,如果用滑鼠全選中編輯内容并在目前Text控件之外釋放左鍵,則浏覽器會出現當機的bug
(這種特殊操作時,使用jQuery.parent()方法永遠都能擷取parent,進而造成死循環)
* 【修改】設定checkType: {"Y": "", "N":""} 後,checkAllNodes無法全部選中或取消的bug
* 【增加】setting.asyncDataFilter 屬性;異步擷取資料後,首先提供給使用者進行加工,然後再回報給zTree的進行添加
* 【增加】setting.dragCopy/dragMove屬性,可以指定節點拖拽後是copy 還是move,如果這兩個屬性同時false,則Tree無法進行拖拽操作,如果同時為true,則按下Ctrl鍵拖拽時copy,否則move
* 【增加】treeNode.iconOpen/iconClose 屬性,便于自定義檔案夾圖示在展開、折疊時更換
* 【增加】對zTree增加 beforeDblclick、dblclick 輕按兩下事件,供特殊使用,該事件與右鍵的 rightClick 使用方法類似。
* 【增加】confirmRename 事件回調函數,以提供修改名稱的校驗功能
* 【增加】confirmDragOpen事件,拖拽過程中 target 是父節點時,允許自行控制是否自動展開
* 【增加】inputNodeName 接口,讓節點進入重命名狀态
* 【增加】copyNode 接口,與 Move 功能類似,允許複制節點
轉載于:https://www.cnblogs.com/MoShin/archive/2011/06/04/2072868.html