话说这些天都在忙着编写桂电在线网络直播所用的页面代码,而又因为自己的机子上没装任何数据库,又不能在桂电在线服务器的数据库上测试,这两年学习PHP+MySQL,对于ASP生疏了不少,ASP.NET又不用,PHP对于来讲不是主流,也没有配置相关运行环境,所以就采用了javascript+xml的方式写了。

 javascript-xml-browser    在网上查找了许多关于javascript加载XML文档的文章,但几乎都遇到了同一个问题,那就是对非IE浏览器的兼容问题。于是在总结前人的方法后,折腾了半个多小时,终于弄出了兼容IE/FF/CHORME/OPERA的JS代码,在此记之,待后查。

// 加载xml文档,兼容IE/FF/CHROME
loadXML = function(fileRoute) {
  xmlDoc = null;
  if (window.ActiveXObject) {
    var xmlDom = new ActiveXObject("Microsoft.XMLDOM");
    xmlDom.async = false;
    xmlDom.preserveWhiteSpace = true;
    xmlDom.load(fileRoute);
    xmlDoc = xmlDom.documentElement;
  }
  else if (document.implementation && document.implementation.createDocument) {
     var xmlhttp = new window.XMLHttpRequest();
     xmlhttp.open("GET", fileRoute, false);
     xmlhttp.send(null);
      xmlDoc = xmlhttp.responseXML.documentElement;
   }
  else { xmlDoc = null; }
     return xmlDoc;
   }

//对xml对象进行判断
checkXMLDocObj    = function(xmlFile)
{
    var xmlDoc    = loadXML(xmlFile);
    if(xmlDoc==null)
    {
        alert(‘您的浏览器不支持xml文件读取,请您更改浏览器设置或者升级您的浏览器后再刷新本页!’);       
    }   
    return xmlDoc;
}

    另外,在对XML文档进行节点选取时使用seleteNodes方法不兼容非IE浏览器,推荐使用getElementsByTagName()方法。总之,在使用javascript对XML文件进行操作时请事先学习各浏览器相互不兼容的语法区别,尽量避免即可。

随便看看

  1. 她拒绝了他100次,但第101次,他拒绝了她!
  2. 中国城市建设统计年鉴(年报)2000-2007
  3. 网易《魔兽世界》合法运营之路折射中国互联网监管规范不清
  4. WordPress建博方案解析
  5. 独立博客的搜索引擎收录登录地址
  6. 有道海量词典-网易推出的免费在线词典
  7. 以IPTV看三网融合之利益分配困境
  8. 互联网整治 CN域名路在何方
  9. 毕业论文致谢词
  10. 应届毕业生就业二三事之女性就业机会平等的问题
, , , ,
  1. 跨域吗?
    怎么说呢,你的这个代码还是ajax组件,因为同源策略的关系在ff chrome这些浏览器是无法成功的,目前想完美跨域交换数据必须使用flash.

    木子小鱼 回复:

    我也只是拿来主义而已,毕竟我是一个学经济管理的,技术不是我的本行~其实我一般不管它是属于哪种类型的,只要管用通用就是最好的~呵呵~

发表评论