【www.gdgbn.com--php函数】

网页特效 加载xml文档的函数

查了javascript权威指南,又看了网上一些写法,然后整理出一个原则上是全兼容的加载xml函数.经过本人测试的有:ie6/7/8,ff(geckos),chrome(webkit),opera,没装safira,但她和chrome一样的核,应该没问题.


function loadxml(filename){
 //@mrthink.net
    var xmldoc = null;
    if (window.activexobject) {//写给ie系
        xmldoc = new activexobject("microsoft.xmldom");
        xmldoc.async = false;//这句别漏掉,否则ie系会报完成该操作所需的数据还不可用
        //xmldoc.loadxml(filename);//这个是用来加载xml字符串的
        xmldoc.load(filename);//如果用的是xml文件。
    }
    else
        if (document.implementation && document.implementation.createdocument) {//webkit,geckos,op内核的
            var xmlhttp = new window.xmlhttprequest();
            xmlhttp.open("get", filename, false);//类型,文件名,是否缓存
            xmlhttp.send(null);
            xmldoc = xmlhttp.responsexml;
        }
        else {
            xmldoc = null;
        }
    return xmldoc;
}

面的函数使用很简单,比如把获取到的xml文档赋值给var xmldom=loadxml(‘i.xml’);然后你就可以像操作普通dom一样操作xml文档内容了

jquery文章

//可以指定参数的方法@mrthink.net
$.ajax({
 //这个是万能的,不单单可以读xml
 url:"i.xml", //xml文档路径
 type:"get", //请求方式
 datatype:"xml",//文档类型
 timeout:1000,//超时时长
 cache:false,//是否缓存
 error:function(){alert("oh,oh,error!haha!");},//这个是抛出加载失败的信息,比js的智能吧
 success:function(xml){
  alert("yeah! success!");//在这里执行对xml文档内容的操作
 }
 });
//更简洁的方法
$.get("i.xml",function(xml){
 alert("yeah! success!");//在这里执行对xml文档内容的操作
});

本文来源:http://www.gdgbn.com/jiaocheng/29697/