﻿var Xml = {
  _req:null,
  _loadSafariXML: function(xml){
  	var doc = null
  	if (window.XMLHttpRequest) {
  		this._req = new XMLHttpRequest();
  		if (this._req.overrideMimeType) {
  			this._req.overrideMimeType("text/xml");
  		};
  	}else if(window.ActiveXObject){
  		try{
  			this._req = new ActiveXObject('Msxml2.XMLHTTP');
  		}catch(e){
  			try{
  				this._req = new ActiveXObject('Microsoft.XMLHTTP');
  			}catch(e){}
  		}
  	};
  	this._req.onreadystatechange = function() {
  		if (this._req.readyState == 4) {
  			if (this._req.status == 200) {
  				doc = this._req.responseXML;
  			}else{

  			};
  		};
  	}.bind(this);
  	this._req.open("GET",xml,false);
  	this._req.send(null);
  	return doc;
  },
  _loadFirefoxXML: function(xml_path) {
    var xmlDoc;
    if(window.ActiveXObject)
    {
        xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
        xmlDoc.async = false;
        xmlDoc.load(xml_path);
    }
    else if (document.implementation&&document.implementation.createDocument)
    {
        xmlDoc = document.implementation.createDocument('', '', null);
        xmlDoc.async = false;
        xmlDoc.load(xml_path);
    }
    else
    {
        return null;
    }
    return xmlDoc;
  },
  load: function(xml_path) {
    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
    return (isSafari || isChrome) ? this._loadSafariXML(xml_path) : this._loadFirefoxXML(xml_path);
  },
  getNodeXml: function(node){
    if (!document.all) {
      var result = "";
      for(var i=0;i<node.childNodes.length;i++){
        if (node.childNodes[i].nodeType == 3) {result += node.childNodes[i].textContent};
        if (node.childNodes[i].nodeType == 1) {result += "<"+node.childNodes[i].tagName+">"+Xml.getNodeXml(node.childNodes[i])}+"</"+node.childNodes[i].tagName+">";
      }
      return result
    }else{
      var result = "";
      for(var i=0;i<node.childNodes.length;i++){
        if (node.childNodes[i].nodeType == 3) {result += node.childNodes[i].text};
        if (node.childNodes[i].nodeType == 1) {result += "<"+node.childNodes[i].tagName+">"+Xml.getNodeXml(node.childNodes[i])}+"</"+node.childNodes[i].tagName+">";
      }
      return result
    };
  }
}
if (document.all) {
    document.execCommand("BackgroundImageCache", false, true);
}
