﻿// 加载xml文档

var req = null;

var loadSafariXML = function(xml){
	var doc = null
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		if (req.overrideMimeType) {
			req.overrideMimeType("text/xml");
		};
	}else if(window.ActiveXObject){
		try{
			req = new ActiveXObject('Msxml2.XMLHTTP');
		}catch(e){
			try{
				req = new ActiveXObject('Microsoft.XMLHTTP');
			}catch(e){}
		}
	};
	req.onreadystatechange = function() {
		if (req.readyState == 4) {
			if (req.status == 200) {
				doc = req.responseXML;
			}else{
				
			};
		};
	};
	req.open("GET",xml,false);
	req.send(null);
	return doc;
}


var loadFirefoxXML = function(xmlFile)
{
    var xmlDoc;
    if(window.ActiveXObject)
    {
        xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
        xmlDoc.async = false;
        xmlDoc.load(xmlFile);
    }
    else if (document.implementation&&document.implementation.createDocument)
    {
        xmlDoc = document.implementation.createDocument('', '', null);
        xmlDoc.async = false;
        xmlDoc.load(xmlFile);
    }
    else
    {
        return null;
    }
    return xmlDoc;
}

var loadXML = function(xmlFile){

    var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
    var isOpera = userAgent.indexOf("Opera") > -1; //判断是否Opera
    var isMaxthon = userAgent.indexOf("Maxthon") > -1 ; //判断是否傲游3.0
    var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera ; //判断是否IE 
    var isFF = userAgent.indexOf("Firefox") > -1 ; //判断是否Firefox
    var isSafari = userAgent.indexOf("Safari") > -1 && userAgent.indexOf("Chrome") < 1 ; //判断是否Safari
    var isChrome = userAgent.indexOf("Chrome") > -1 ; //判断是否Chrome
    if (isSafari || isChrome) {
        return loadSafariXML(xmlFile);
    }else{
        return loadFirefoxXML(xmlFile);
    }
}


// 读取xml文档节点值
function getValue(tagName,root){
    root = root ? root : xmlDoc;
    var tags = root.getElementsByTagName(tagName);
	if (tags.length == 0){
		return [" "]
		}
    if (tags.length == 1) {
        return [tags[0].firstChild.nodeValue];
    }
    if (tags.length > 1) {
        var arr = new Array;
        for( var i=0; i < tags.length; i++){
            if (tags[i].firstChild) {
                arr.push(tags[i].firstChild.nodeValue);
            }
        }
        return arr;
    }
}
// 获取dom节点
function $(id){return typeof id == "string" ? document.getElementById(id) : id}
//显隐容器
function ShowHide(id){ $(id).style.display = ($(id).style.display != 'block') ? 'block':'none'}
createTag = function(tagName,innerHTML,parentNode,link,style){
    var tag = document.createElement(tagName);
    tag.innerHTML = innerHTML;
    if (style) {
        for(property in style){
            tag.style[property] = style[property];
        }
    }
    if(link){
        tag.href = link;
    }
    parentNode.appendChild(tag);
    return tag;
}

// 读取节点内 内容
function getFullText(xmlNode,isContent){
    text = "";
    for(var i = 0 ; i < xmlNode.childNodes.length;i++){
		if (xmlNode.childNodes[i].nodeType != 1 && xmlNode.childNodes[i].childNodes.length == 0) {
			text += xmlNode.childNodes[i].nodeValue;
		}else{
			text += getFullText(xmlNode.childNodes[i],true);
		};
		}
		var fulltext = "<" + xmlNode.nodeName;
		if (xmlNode.attributes) {
			for (var i=0; i < xmlNode.attributes.length; i++) {
				fulltext += " " + xmlNode.attributes[i].nodeName + "=\"" + xmlNode.attributes[i].nodeValue + "\"";
			};
    };
    fulltext += ">" + text + "</" + xmlNode.nodeName + ">";
    return isContent ? fulltext : text;
}

