//跨浏览器返回XMLDOM对象
function getXMLDOM(xmlStr){
var xmlDom=null;
if(typeof window.DOMParser !='undefined'){
xmlDom=(new DOMParser).parseFromString(xmlStr,'text/xml');
var errors=xmlDom.getElementsByTagName('parsererror');
if(errors.length>0){
throw new Error('错误信息:'+errors[0].textContent);
}
}else if(typeof window.ActiveXObject){
var version=[
'MSXML2.DOMDocument6.0',
'MSXML2.DOMDocument3.0',
'MSXML2.DOMDocument',
];
for(var i=0;i<version.length;i++){
try{
var xmlDom=new ActiveXObject(version[i]);
}catch(e){
//跳过
}
}
xmlDom.loadXML(xmlStr);
if(xmlDom.parseError!=0){
throw new Error('错误信息:'+xmlDom.parseError.reason);
};
return xmlDom;
}else{
throw new Error("您的系统或浏览器不支持XML DOM对象!");
};
return xmlDom;
}
//序列化XML
function serializerXML(xmlDom){
var xml='';
if(typeof window.XMLSerializer!='undefined'){
xml=(new XMLSerializer()).serializeToString(xmlDom);
}else if(typeof xmlDom.xml!='undefined'){
xml=xmlDom.xml;
}
return xml;
}
var xmlStr='<root><user>Leee</user></root>';
var xmlDom=getXMLDOM(xmlStr);
// alert(xmlDom.xml); //只有IE支持此序列化
alert(serializerXML(xmlDom));
//PS: 为了跨域所有浏览器兼容,我们放弃了从外部加载XML文件,而使用字符串XML加载和序列化

转载于:https://www.cnblogs.com/gengxinnihaoma/p/7562093.html

XML4跨浏览器兼容相关推荐

  1. 兼容浏览器_你知道什么是跨浏览器兼容吗?

    文章来自:卓码软件测评 在过去的二十年里,互联网得到了巨大的发展.1998年只有大约240万个网站,而现在已经有大约18亿个了,这正好是74900%的增长.不仅如此,互联网用户的数量也从1998年的1 ...

  2. 编写跨浏览器兼容的 CSS 代码的金科玉律

    作为 Web 设计师,你的网站在各种浏览器中有完全一样的表现是很多人的目标,然而这是一个永远无法真正实现的目标,很多人认为,完美的跨浏览器兼容并不必要,这样说虽然没错,但在很多情形,一种近似的兼容还是 ...

  3. js ajax 浏览器兼容,JS跨浏览器兼容,一点点总结

    不同的浏览器,对不同的/相同的属性.方法等的支持程度也会有所差别,要想达到满意的效果,需要做一些处理.给不同的浏览器量体裁衣,也就是所说的达到兼容. 常见的处理方式:(能力检测和浏览器检测) 1.三目 ...

  4. 跨浏览器兼容的HTML5视频音频播放器

    HTML5的video和audio标签是用来在网页中加入视频和音频的标签,在支持html5的浏览器中不需要预先加载Adobe Flash浏览器插件就能轻松快速的播放视频和音频文件.而html5medi ...

  5. 跨浏览器开发:CSS代码的金科玉律

    作为Web设计师,你的网站在各种浏览器中有完全一样的表现是很多人的目标,然而这是一个永远无法真正实现的目标,很多人认为,完美的跨浏览器兼容并不必要,这样说虽然没错,但在很多情形,一种近似的兼容还是很容 ...

  6. 跨浏览器开发工作小结

    本篇小结是在2011年时候总结的,当时做一个产品的跨浏览器兼容工作,由于产品开发的时间比较早,最开始只能在IE下面(IE 8.IE 9还有点点问题)使用,做跨浏览器兼容工作的时候,主要是适配IE 6- ...

  7. 跨浏览器测试工具推荐

    有时候,在不同浏览器将下进行测试是软件测试人员与项目团队的一大挑战.在所有浏览器上运行测试用例使得测试成本非常高.特别是,当我们没有专业的设计团队,或在进行页面设计过程中没有软件验证及确认的时候,更为 ...

  8. addevent()实现跨浏览器绑定事件

    绑定事件一般有三种方式:传统绑定事件,IE绑定事件,W3C绑定事件.传统绑定存在可读性问题,this问题,覆盖问题.为实现跨浏览器绑定事件,我们采用自定义方法addEvent().代码如下: //跨浏 ...

  9. 关于跨浏览器测试那点事

    Web 设计与开发师的一个重要工作环节是跨浏览器测试,谁让我们生活在这个既幸福又痛苦的时代,有那么多浏览器摆在我们面前,还有那个噩梦般总也摆脱不掉的 IE6.本文讲述了与跨浏览器测试有关的各种问题与知 ...

最新文章

  1. pycharm 如何设置文件头信息?信息模板 头文件 coding: utf-8
  2. 邮件报文格式和MIME
  3. 学习quot;平衡二叉树quot;之摘录
  4. Docker Dirty Cow逃逸
  5. 数据压缩之经典——哈夫曼编码(Huffman)
  6. 20个经典Android游戏源码下载地址(持续更新~)
  7. 设置电脑的保护色(绿豆沙色)
  8. 插桩 java_“插桩”式技术
  9. 将excel或是csv文件中的矩阵相乘,输出点乘后的excel文件
  10. 【教程】Nexus、Pixel手机解锁bootloader+刷TWRP Recovery + 刷机(含修改ROM boot.img) + ROOT教程
  11. V4L2驱动的移植与应用(二)
  12. pyqtgraph系列文章:直方图(Histogram)
  13. Python 输出对齐
  14. zigbee加PA信号增强方案:rfx2401+cc2530
  15. noip2016普及组初赛中山市成绩表及分数线
  16. thinkpad T480 ubuntu 16.04安装无线网卡rtl8821ce驱动
  17. 默哀日、灾难日,纪念日,哀悼日等网站都变成黑白色
  18. 天梯赛 L2-016 愿天下有情人都是失散多年的兄妹 (25 分)[测试点1 3 4][未填坑]
  19. WPF 3D开发教程(四)
  20. Postman+Newman命令运行

热门文章

  1. 用canvas整个打飞机游戏
  2. 【2022年蓝桥杯】蓝桥杯第一次海选考试题(5题考试大二)(C#题解)
  3. SQL基础【十二、Like】
  4. oracle查询排序asc/desc 多列 order by
  5. net use 命令集合详解
  6. ORACLE TEXT DATASTORE PREFERENCE(七)
  7. SQL 获取数据IP,ServerName,ClientIPAddress
  8. UE4笔记-进程/线程/网络/IO模块的相关问题记录
  9. Oracle 的一些语句
  10. php72w redis,docker php7安装php-redis