当前位置:编程学习 > JS >>

js加载xml文件多种方法(兼容ff,IE6+,Opera)

网页特效加载xml文件多种方法(兼容ff,ie6+,opera)
下面我们为提供了三种js加载xml文档的做法,每种加载 xml文件的方法都不同,但原理都一样,最好的是最第三款了,实例兼容多浏览器了,第二款实例化了,复制下去可直接使用
//方法一

var xmldoc;
 try{//ie
  //创建空的微软 xml 文档对象
  xmldoc=new activexobject("microsoft.xmldom");
 }catch(e){
  try{//ff
   //创建空的 xml 文档对象
   xmldoc=document.implementation.createdocument("","",null);
  }catch(e){
   alert(e.message);
  }
 }
 try{
  //关闭异步加载,这样可确保在文档完整加载之前,解析器不会继续执行脚本
  xmldoc.async=false;
  //加载xml文档
  xmldoc.load(xml_file);
 }catch(e){
  alert(e.message);
  return false;
 }
 return xmldoc;

方法二,js加载xml并显示出来

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>js加载xml并显示出来</title>
    <script type="text/网页特效">
    var xmlhttp;
    function getdata()
    {
        //创建异步对象
          xmlhttp=new activexobject("microsoft.xmlhttp");
        //加载服务器-注意无参数
          xmlhttp.open("get","xmlfile.xml",true)
        //异步对象事件挂钩
          xmlhttp.onreadystatechange=statechange;
       //发送请求-无参数
          xmlhttp.send(null);
    }
    function statechange()
    {
       if(xmlhttp.readystate==4 && xmlhttp.status==200)
       {
          //获取所有返回的数据
          var data=xmlhttp.responsetext;
          //显示结果
          document.getelementbyid("divlist").innerhtml=data;
       }
    }
    </script>
</head>
<body>
        <table style=" text-align:center">
            <tr>
                <td style="text-align:center">
                    显示从xml文件中获取的数据</td>
            </tr>
            <tr>
                <td style="text-align:center">
                    <input id="button1" type="button" value="获取表格" onclick="getdata()" /></td>
            </tr>
            <tr>
                <td style="text-align:center">
                    <div id="divlist">
                    </div>
                </td>
            </tr>
        </table>

</body>
</html>


方法三  支持ff,ie6+,opera
 
 

function getxmldocument(file){
var xmldoc;
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);
    return;
   }
}
xmldoc.async=false;
xmldoc.load(url);
return xmldoc;
}
补充:网页制作,js教程 
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,