1.XTREE簡介:
XTREE是一個基于AJAX實現(xiàn)的樹形菜單。它的原理就是每次都只加載當前結點下的所有結點,而對開發(fā)人員來說,就是只需要按一定的格式,生成一段XML代碼。XTREE可以自己定制每個結點的ICON和鏈接。XTREE是基于對象的,通過XTREE,你無需再自己生成HTML代碼,而只要生成相應的JS 對象就可以了。
2.官方網(wǎng)址:
http://webfx.eae.net/dhtml/xtree/index.html,可以在這里下載到XTREE最新的版本,也有XTREE的演示的DEMO。
3.XTREE的API:
XTREE的API很簡單,就是一個抽象類WebFXTreeAbstractNode以及該抽象類的兩個子類WebFXTree和WebFXTreeItem。這三個類的屬性和構造函數(shù),還有方法詳見:http://webfx.eae.net/dhtml/xtree/api.html,上面寫得很清晰。
4.XTREE學習筆記
每個結點有一個狀態(tài)叫做OPEN;如果結點為OPEN,則可以EXPAND;對于ITEM結點來說,永遠返回FALSE;
toggle()就是切換,如果為展開的,就收起;如果為收起的,就展開;
XTREE生成的是靜態(tài)樹,它不能從XML中生成樹,而是只能生成簡單的靜態(tài)的樹,看構造函數(shù)的參數(shù)就可以知道【text】【action】
--------------------------------------------------------------
WebFXTreeAbstractNode:
屬性:
id:唯一標識
text: label
action: 鏈接
open: 標志位,boolean型,是否打開
icon: 圖標
openIcon:打開時的圖標
parentNode:父結點的Reference
childNodes: 子結點的Reference的集合
方法:
indent():縮進
toggle():切換
callapse():收起
expand():展開
callapseAll():收起全部
expandAll():展開全部
expandChildren():展開子結點
callapseChildren():收起子結點
getNextSibling():取得下一個兄弟結點的Reference
getPreviousSibling():取得上一個兄弟結點的Reference
toString():生成HTML代碼
------------------------------------------------------------------
WebFXTree:
構造函數(shù):new WebFXTree([text], [action], [behavior],[icon],[openIcon]);
參數(shù):
text:
action:
behavior:
icon:
openIcon:
屬性:
rendered 標志位,boolean類型,用于標記該樹是否已經(jīng)生成和顯示。
WebFXTreeAbstractNode的所有屬性
方法:
getSelected():返回一個Reference,被選中的那個對象的Reference。
setBehavior(sBehavior): classic,explorer;
getBehavior():
WebFXTreeAbstractNode的所有方法
-------------------------------------------------------------------
WebFXTreeItem:
構造函數(shù):
new WebFXTreeItem([text],[action],[parent],[icon],[openIcon]);
屬性:
WebFXTreeAbstractNode的所有屬性
方法:
getFirst():返回第一個子結點的Reference
getLast():返回嘴后一個子結點的Reference
__________________________________________________________________________________________
5.XLoadTree學習筆記:
XLoadTree與XTree的區(qū)別就在于,XTree只能生成靜態(tài)樹,而XLoadTree可以根據(jù)XML生成動態(tài)樹。
XLoadTree是由Xtree而來的,主要有兩個類:WebFXLoadTree和WebFXLoadTreeItem,其中,WebFXLoadTree繼承自WebFXTree,WebFXLoadTreeItem繼承自WebFXTreeItem
---------------------------------------------------------------------
WebFXLoadTree:
構造函數(shù):
new WebFXLoadTree(sText, sXmlSrc, sAction, sBehavior, sIcon, sOpenIcon)
參數(shù):
sXmlSrc:展開時需要用到的XML文件
其余參數(shù)與WebFXTree一樣
屬性:
src: XML源文件
loading: 標志位,boolean類型,表示正在加載XML文件
loaded: 標志位,boolean類型, 表示XML文件已將加載完畢
errorText: 錯誤描述
WebFXTree中的所有屬性
方法:
reload():重新加載XML文件
WebFXTree中的所有方法
-----------------------------------------------------------------------
WebFXLoadTreeItem:
構造函數(shù):
new WebFXLoadTreeItem(sText, sXmlSrc, sAction, eParent, sIcon, sOpenIcon)
參數(shù):
eParent:可選,該結點要加入到的結點的Reference
屬性:
src: XML源文件
loading: 標志位,boolean類型,表示正在加載XML文件
loaded: 標志位,boolean類型, 表示XML文件已將加載完畢
errorText: 錯誤描述
WebFXTree中的所有屬性
方法:
reload():重新加載XML文件
WebFXTreeItem中的所有方法
XML文件的格式:
XML文件的例子: