/******************************************
*JXTree 객체, 외부 XML 읽기 파일 데이터, 스패닝 트리
*@author brull
*@email brull@163.com
*@date 2007-03-27
************ *** **************************/
/*
*@param xmlURL XML文件的地址
*/
var JXTree = function(xmlURL)
{
var 결과 = new Array();
/*****************************
*먼저 TreeNode 추상 개체를 정의합니다.
*TreeNode 개체 속성:
*id 고유 번호, xml 파일에 노드 속성으로 정의되어야 함
*level 노드 레벨, -1부터 시작(예: 루트 노드)
*_click 노드 클릭, xml 파일에 노드 속성으로 정의 [선택 사항 ]
*isLast 이 노드가 위치한 레벨의 마지막 노드인지 여부
*parent_isLast 상위 노드가 상위 노드가 위치한 레벨의 마지막 노드인지 여부
*toHTML 변환 방법 이 노드를 HTML 코드로 변환
****** *************************/
var TreeNode = 함수(노드, 수준)
{
var parent_elements = node.parentNode ? (node.parentNode.parentNode ? node.parentNode.parentNode.childNodes : null) : null;
var 요소 = node.parentNode ? node.parentNode.childNodes : null;
this.id = XMLDom.getAttribute(node,"id") ? XMLDom.getAttribute(node,"id") : "";
this.level = level;//节点的层次
this.isLast = 요소 ? ((elements.item(elements.length-2) === 노드) ? true : false) : false;
this._click = XMLDom.getAttribute(node,'click') ? XMLDom.getAttribute(node,'click') : "";
this.toHTML = null;//function
}
/*****************************
*ElementNode 객체, 추상 객체 TreeNode
에서 상속됨 *새 속성:
* _nodeName 노드 이름
*****************************/
var ElementNode = function(node,level)
{
TreeNode .apply(this,arguments);
this._nodeName = XMLDom.getAttribute(node,"name") ? XMLDom.getAttribute(node,"name") : "";
this.toHTML = function(){
var 결과 = "";
if(this.isLast) 결과 = "