http://developer.mozilla.org/en/docs/XML_in_Mozilla

解决方案 »

  1.   

    var xmlDoc; 
    function importXML(file) { 
     var xmlDoc; 
     var moz = (typeof document.implementation != 'undefined') && (typeof 
    document.implementation.createDocument != 'undefined'); 
     var ie = (typeof window.ActiveXObject != 'undefined');  if (moz) { 
       xmlDoc = document.implementation.createDocument("", "", null) 
       xmlDoc.onload = readXML; 
     } else if (ie) { 
       xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); 
       xmlDoc.async = false; 
       while(xmlDoc.readyState != 4) {}; 
     } 
     xmlDoc.load(file); 
    }
      

  2.   

    var _nodePrototype=Node.prototype;
            _nodePrototype.__proto__={__proto__:_nodePrototype.__proto__};
            _p=_nodePrototype.__proto__;
            _p.__defineGetter__("xml",function(){
                return(new XMLSerializer).serializeToString(this);
            });
            _p.__defineGetter__("baseName",function(){
                var lParts=this.nodeName.split(":");
                return lParts[lParts.length-1];
            });
            _p.__defineGetter__("text",function(){
                var cs=this.childNodes;
                var l=cs.length;
                var sb=new Array(l);
                for(var i=0;i<l;i++)
                    sb[i]=cs[i].text;
                return sb.join("");
            });
            _p.selectNodes=function(sExpr){
                var doc=this.nodeType==9?this:this.ownerDocument;
                var nsRes=doc.createNSResolver(this.nodeType==9?this.documentElement:this);
                var nsRes2;
                if(doc._selectionNamespaces){
                    nsRes2=function(s){
                        if(doc._selectionNamespaces[s])
                            return doc._selectionNamespaces[s];
                        return nsRes.lookupNamespaceURI(s);
                    };
                }
                else nsRes2=nsRes;
                var xpRes=doc.evaluate(sExpr,this,nsRes2,5,null);
                var res=[];
                var item;
                while((item=xpRes.iterateNext()))
                    res.push(item);
                return res;
            };
            _p.selectSingleNode=function(sExpr){
                var doc=this.nodeType==9?this:this.ownerDocument;
                var nsRes=doc.createNSResolver(this.nodeType==9?this.documentElement:this);
                var nsRes2;
                if(doc._selectionNamespaces){
                    nsRes2=function(s){
                        if(doc._selectionNamespaces[s])
                            return doc._selectionNamespaces[s];
                        return nsRes.lookupNamespaceURI(s);
                    };
                }
                else nsRes2=nsRes;
                var xpRes=doc.evaluate(sExpr,this,nsRes2,9,null);
                return xpRes.singleNodeValue;
            };
            _p.transformNode=function(oXsltNode){
                var doc=this.nodeType==9?this:this.ownerDocument;
                var processor=new XSLTProcessor();
                processor.importStylesheet(oXsltNode);
                var df=processor.transformToFragment(this,doc);
                return df.xml;
            };
            _p.transformNodeToObject=function(oXsltNode,oOutputDocument){
                var doc=this.nodeType==9?this:this.ownerDocument;
                var outDoc=oOutputDocument.nodeType==9?oOutputDocument:oOutputDocument.ownerDocument;
                var processor=new XSLTProcessor();processor.importStylesheet(oXsltNode);
                var df=processor.transformToFragment(this,doc);
                while(oOutputDocument.hasChildNodes())
                    oOutputDocument.removeChild(oOutputDocument.lastChild);
                var cs=df.childNodes;
                var l=cs.length;
                for(var i=0;i<l;i++)
                    oOutputDocument.appendChild(outDoc.importNode(cs[i],true));
            };
            var _attrPrototype=Attr.prototype;
            _attrPrototype.__proto__={__proto__:_attrPrototype.__proto__};
            _p=_attrPrototype.__proto__;
            _p.__defineGetter__("xml",function(){
                var nv=(new XMLSerializer).serializeToString(this);
                return this.nodeName+"=\""+nv.replace(/\"/g,"&quot;")+"\"";
            });
            var _textPrototype=Text.prototype;
            _textPrototype.__proto__={__proto__:_textPrototype.__proto__};
            _p=_textPrototype.__proto__;
            _p.__defineGetter__("text",function(){
                return this.nodeValue;
            });
        })();
    }var xml = new MzXmlDocument();
    xml.async = false;
    xml.load("default.xml");
    if(xml.readyState==4)
    {
      alert(xml.documentElement.xml);
    }
      

  3.   

    http://developer.mozilla.org/en/docs/XML_in_Mozilla
    没找到,能不能针对代码给你例子或再详细点
      

  4.   

    mozilla firefox 是不支持 xslt 的,你就别想着走这条路了,除非你自己跟据XSLT自己用JS脚本解析。
      

  5.   

    <html>
    <head>
    <script type="text/javascript">
    var xmlDoc
    function loadXML()
    {
    //load xml file
    // code for IE
    if (window.ActiveXObject)
    {
    xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
    xmlDoc.async=false;
    xmlDoc.load("note.xml");
    getmessage()
    }
    // code for Mozilla, etc.
    else if (document.implementation &&
    document.implementation.createDocument)
    {
    xmlDoc= document.implementation.createDocument("","",null);
    xmlDoc.load("note.xml");
    xmlDoc.onload=getmessage
    }
    else
    {
    alert('Your browser cannot handle this script');
    }
    }function getmessage()
    {
    document.getElementById("to").innerHTML=
    xmlDoc.getElementsByTagName("to")[0].firstChild.nodeValue
    document.getElementById("from").innerHTML=
    xmlDoc.getElementsByTagName("from")[0].firstChild.nodeValue
    document.getElementById("message").innerHTML=
    xmlDoc.getElementsByTagName("body")[0].firstChild.nodeValue
    }
    </script>
    </head><body onload="loadXML()" bgcolor="yellow">
    <h1>W3Schools Internal Note</h1>
    <p><b>To:</b> <span id="to"></span><br />
    <b>From:</b> <span id="from"></span>
    <hr />
    <b>Message:</b> <span id="message"></span>
    </p>
    </body>
    </html>
      

  6.   

    if(System.supportsXmlHttp() && "undefined"!=typeof XMLDocument && !IE7)
    {
        (function()
        {
            var 这里的System.supportsXmlHttp()是在那里定义的
      

  7.   

    >>net_lover
    以下是我的xml,但我发现在mozilla中你提供的语句并不能让页面中取得值
    我发现用以下代码在ie中也不能取到值,所以我变更了一下,希望这不是影响mozilla中呈现的原因
    document.getElementById("to").innerHTML=
    xmlDoc.getElementsByTagName("main")[0].firstChild.nodeValue
    >>
    document.getElementById("to").innerHTML=
    xmlDoc.getElementsByTagName("main")[0].test
      

  8.   

    --------xml-----------<?xml version="1.0" encoding="utf-8" ?> <main caption="主首页呈现">
       <menushead TITLE="网站简介" gid="1" img="images/navbar_list.gif" >
          <td_text td_heading="自我介绍:">计算机</td_text>
       </menushead>
       <menushead TITLE="资料摘要" gid="2" img="images/navbar_donate.gif" >
          <td_text td_heading="资料摘要"><a>sdfs</a></td_text>
       </menushead>
       <menushead TITLE="程序入口" gid="3" img="images/navbar_help.gif">
          <td_text td_heading="程序入口多多指点">asdf</td_text>
       </menushead>
       <menushead TITLE="论坛帮助" gid="4" img="images/navbar_Examples.gif" >
          <td_text td_heading="论坛帮助 :">dddd</td_text>
       </menushead>   
    </main>