估计这句在ff下有问题:
xmldoc = new ActiveXObject("MSXML2.DOMDocument");

解决方案 »

  1.   

    你既然要做兼容,你干嘛又不加判断浏览器类型(比如if(document.all))就直接
    xmldoc = new ActiveXObject("MSXML2.DOMDocument");只要是new ActiveXObject就是IE浏览器的东东...
    如果是Ajax获取服务器端返回的xml,不是有个responseXML么?
    然后你
    var dom = xmlHttp.responseXML;
    这个dom就可以用标准函数来解析了吧,
    比如
    var len = dom.childNodes.length;
    for(var i=0;i<len;i++){
       .....dom.childNodes[i].....
    }
    现在都用json了,很少用返回xml了.........
      

  2.   

    把获取获取xml文档部分封装在一个公共函数里
    //载入XML文档
    function loadXMLDoc(dname){
        try {//Internet Explorer
            xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
        }
        catch(e){
            try {//Firefox, Mozilla, Opera, etc.
            xmlDoc=document.implementation.createDocument("","",null);
            }
            catch(e) {alert(e.message)}
        }
        try{
          xmlDoc.async=false;
          xmlDoc.load(dname);
          return xmlDoc;
        }
        catch(e){alert(e.message)}
    }